Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / clr / src / BCL / System / Reflection / Emit / Opcode.cs / 1 / Opcode.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== namespace System.Reflection.Emit { using System; using System.Security.Permissions; [System.Runtime.InteropServices.ComVisible(true)] public struct OpCode { internal String m_stringname; internal StackBehaviour m_pop; internal StackBehaviour m_push; internal OperandType m_operand; internal OpCodeType m_type; internal int m_size; internal byte m_s1; internal byte m_s2; internal FlowControl m_ctrl; // Specifies whether the current instructions causes the control flow to // change unconditionally. internal bool m_endsUncondJmpBlk; // Specifies the stack change that the current instruction causes not // taking into account the operand dependant stack changes. internal int m_stackChange; internal OpCode(String stringname, StackBehaviour pop, StackBehaviour push, OperandType operand, OpCodeType type, int size, byte s1, byte s2, FlowControl ctrl, bool endsjmpblk, int stack) { m_stringname = stringname; m_pop = pop; m_push = push; m_operand = operand; m_type = type; m_size = size; m_s1 = s1; m_s2 = s2; m_ctrl = ctrl; m_endsUncondJmpBlk = endsjmpblk; m_stackChange = stack; } internal bool EndsUncondJmpBlk() { return m_endsUncondJmpBlk; } internal int StackChange() { return m_stackChange; } public OperandType OperandType { get { return (m_operand); } } public FlowControl FlowControl { get { return (m_ctrl); } } public OpCodeType OpCodeType { get { return (m_type); } } public StackBehaviour StackBehaviourPop { get { return (m_pop); } } public StackBehaviour StackBehaviourPush { get { return (m_push); } } public int Size { get { return (m_size); } } public short Value { get { if (m_size == 2) return (short) (m_s1 << 8 | m_s2); return (short) m_s2; } } public String Name { get { return m_stringname; } } public override bool Equals(Object obj) { if (obj is OpCode) return Equals((OpCode)obj); else return false; } public bool Equals(OpCode obj) { return obj.m_s1 == m_s1 && obj.m_s2 == m_s2; } public static bool operator ==(OpCode a, OpCode b) { return a.Equals(b); } public static bool operator !=(OpCode a, OpCode b) { return !(a == b); } public override int GetHashCode() { return this.m_stringname.GetHashCode(); } public override String ToString() { return m_stringname; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== namespace System.Reflection.Emit { using System; using System.Security.Permissions; [System.Runtime.InteropServices.ComVisible(true)] public struct OpCode { internal String m_stringname; internal StackBehaviour m_pop; internal StackBehaviour m_push; internal OperandType m_operand; internal OpCodeType m_type; internal int m_size; internal byte m_s1; internal byte m_s2; internal FlowControl m_ctrl; // Specifies whether the current instructions causes the control flow to // change unconditionally. internal bool m_endsUncondJmpBlk; // Specifies the stack change that the current instruction causes not // taking into account the operand dependant stack changes. internal int m_stackChange; internal OpCode(String stringname, StackBehaviour pop, StackBehaviour push, OperandType operand, OpCodeType type, int size, byte s1, byte s2, FlowControl ctrl, bool endsjmpblk, int stack) { m_stringname = stringname; m_pop = pop; m_push = push; m_operand = operand; m_type = type; m_size = size; m_s1 = s1; m_s2 = s2; m_ctrl = ctrl; m_endsUncondJmpBlk = endsjmpblk; m_stackChange = stack; } internal bool EndsUncondJmpBlk() { return m_endsUncondJmpBlk; } internal int StackChange() { return m_stackChange; } public OperandType OperandType { get { return (m_operand); } } public FlowControl FlowControl { get { return (m_ctrl); } } public OpCodeType OpCodeType { get { return (m_type); } } public StackBehaviour StackBehaviourPop { get { return (m_pop); } } public StackBehaviour StackBehaviourPush { get { return (m_push); } } public int Size { get { return (m_size); } } public short Value { get { if (m_size == 2) return (short) (m_s1 << 8 | m_s2); return (short) m_s2; } } public String Name { get { return m_stringname; } } public override bool Equals(Object obj) { if (obj is OpCode) return Equals((OpCode)obj); else return false; } public bool Equals(OpCode obj) { return obj.m_s1 == m_s1 && obj.m_s2 == m_s2; } public static bool operator ==(OpCode a, OpCode b) { return a.Equals(b); } public static bool operator !=(OpCode a, OpCode b) { return !(a == b); } public override int GetHashCode() { return this.m_stringname.GetHashCode(); } public override String ToString() { return m_stringname; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- Point3DKeyFrameCollection.cs
- SSmlParser.cs
- StaticResourceExtension.cs
- GridItemCollection.cs
- EmptyStringExpandableObjectConverter.cs
- NameTable.cs
- EventProxy.cs
- TableParaClient.cs
- ListView.cs
- SystemGatewayIPAddressInformation.cs
- MimeTypeMapper.cs
- TextServicesContext.cs
- StrokeRenderer.cs
- OracleCommand.cs
- ping.cs
- TimeoutConverter.cs
- OptimalTextSource.cs
- ScrollProperties.cs
- ColorTransform.cs
- PersonalizableTypeEntry.cs
- Parameter.cs
- BamlCollectionHolder.cs
- linebase.cs
- RSACryptoServiceProvider.cs
- CodeAttributeArgument.cs
- XmlSchemaSet.cs
- APCustomTypeDescriptor.cs
- MdbDataFileEditor.cs
- GuidelineSet.cs
- HtmlProps.cs
- EventLogEntry.cs
- ComponentTray.cs
- StringAnimationBase.cs
- BaseHashHelper.cs
- DrawingGroup.cs
- ControlPropertyNameConverter.cs
- InvalidWMPVersionException.cs
- TypeElement.cs
- DnsEndpointIdentity.cs
- Transform3DGroup.cs
- WindowsMenu.cs
- EpmSyndicationContentSerializer.cs
- ComplexBindingPropertiesAttribute.cs
- BehaviorDragDropEventArgs.cs
- InputBinder.cs
- BaseCAMarshaler.cs
- RecognizedPhrase.cs
- MetadataFile.cs
- ColumnResult.cs
- RadioButtonPopupAdapter.cs
- StylusTip.cs
- SqlDataSourceFilteringEventArgs.cs
- ThreadStartException.cs
- BlurBitmapEffect.cs
- XmlNamespaceManager.cs
- DataListItem.cs
- RowsCopiedEventArgs.cs
- exports.cs
- CompositeFontParser.cs
- RelationshipConverter.cs
- GridViewSortEventArgs.cs
- PrintPreviewGraphics.cs
- Input.cs
- UserCancellationException.cs
- Parsers.cs
- NativeMethods.cs
- ProtocolsConfigurationEntry.cs
- PerfService.cs
- CodeIdentifiers.cs
- NamespaceEmitter.cs
- EventItfInfo.cs
- GeometryModel3D.cs
- EntityDataSourceViewSchema.cs
- Message.cs
- MenuItemBinding.cs
- AssemblyHash.cs
- DataControlFieldCollection.cs
- XpsSerializationManagerAsync.cs
- TreeWalker.cs
- ScriptingJsonSerializationSection.cs
- FlowLayoutPanel.cs
- Pool.cs
- AccessControlEntry.cs
- BinaryFormatter.cs
- DataGridDesigner.cs
- RenderTargetBitmap.cs
- MethodAccessException.cs
- PeerNameRecordCollection.cs
- DrawingContextWalker.cs
- ServiceModelExtensionCollectionElement.cs
- DropShadowEffect.cs
- ColorPalette.cs
- TargetConverter.cs
- XdrBuilder.cs
- SymDocumentType.cs
- EntityDesignerDataSourceView.cs
- InputGestureCollection.cs
- DataObject.cs
- Marshal.cs
- Rotation3DAnimationUsingKeyFrames.cs