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
- Material.cs
- RegexReplacement.cs
- ExtendedProperty.cs
- NotifyParentPropertyAttribute.cs
- XPathNavigatorKeyComparer.cs
- ImportCatalogPart.cs
- LogWriteRestartAreaAsyncResult.cs
- DataControlField.cs
- DashStyle.cs
- AuthenticatedStream.cs
- ApplicationException.cs
- XmlSchemaSimpleTypeRestriction.cs
- UrlPath.cs
- RuntimeResourceSet.cs
- MediaPlayer.cs
- OutOfProcStateClientManager.cs
- DataGridPageChangedEventArgs.cs
- PersonalizationEntry.cs
- SvcMapFileLoader.cs
- WorkflowApplicationUnhandledExceptionEventArgs.cs
- XmlDeclaration.cs
- WindowsTokenRoleProvider.cs
- TemplateControlParser.cs
- JsonWriter.cs
- ServerTooBusyException.cs
- Context.cs
- Predicate.cs
- SecurityElement.cs
- Compensate.cs
- ThicknessAnimationUsingKeyFrames.cs
- ComplexTypeEmitter.cs
- EdmComplexTypeAttribute.cs
- SiteOfOriginPart.cs
- TiffBitmapDecoder.cs
- Visitor.cs
- ResourceDisplayNameAttribute.cs
- CodeAttributeDeclaration.cs
- ConfigXmlWhitespace.cs
- VectorCollectionValueSerializer.cs
- ProfileParameter.cs
- SiteMapDesignerDataSourceView.cs
- SweepDirectionValidation.cs
- EventLogRecord.cs
- ExpressionPrefixAttribute.cs
- InternalDuplexChannelFactory.cs
- ObjectToken.cs
- CellPartitioner.cs
- FocusChangedEventArgs.cs
- UnsafeNativeMethodsPenimc.cs
- MessageSecurityProtocolFactory.cs
- CharacterShapingProperties.cs
- PasswordPropertyTextAttribute.cs
- Stack.cs
- EntityDataSourceValidationException.cs
- ColumnWidthChangedEvent.cs
- ApplicationInfo.cs
- CompositeKey.cs
- ChannelFactory.cs
- SchemaHelper.cs
- ProjectionCamera.cs
- EventLogPermissionEntry.cs
- XsdBuildProvider.cs
- rsa.cs
- NativeMethods.cs
- NumericUpDownAcceleration.cs
- ToolboxSnapDragDropEventArgs.cs
- BaseCAMarshaler.cs
- webproxy.cs
- BindingExpressionUncommonField.cs
- WebPartCatalogCloseVerb.cs
- BeginStoryboard.cs
- X509SecurityToken.cs
- PersonalizationProviderHelper.cs
- QuaternionRotation3D.cs
- WebExceptionStatus.cs
- TextServicesCompartmentContext.cs
- CodeMethodReturnStatement.cs
- FreezableCollection.cs
- WebPartMovingEventArgs.cs
- KnownAssembliesSet.cs
- DocumentXPathNavigator.cs
- WebPartConnection.cs
- FormViewUpdateEventArgs.cs
- TextSelectionProcessor.cs
- DatagridviewDisplayedBandsData.cs
- NegotiationTokenAuthenticatorStateCache.cs
- _LocalDataStore.cs
- WindowProviderWrapper.cs
- CmsInterop.cs
- InkCanvas.cs
- InheritanceRules.cs
- ScopelessEnumAttribute.cs
- RepeatBehavior.cs
- GroupJoinQueryOperator.cs
- LocalBuilder.cs
- SchemaMapping.cs
- SqlUDTStorage.cs
- FlowDocumentPaginator.cs
- TextSelectionHighlightLayer.cs
- AutoCompleteStringCollection.cs