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
- MorphHelpers.cs
- IndexedEnumerable.cs
- PerformanceCounterCategory.cs
- ElementNotEnabledException.cs
- HttpsHostedTransportConfiguration.cs
- EdmScalarPropertyAttribute.cs
- TreePrinter.cs
- ImpersonationContext.cs
- XmlValueConverter.cs
- XmlWriterSettings.cs
- VerificationAttribute.cs
- validation.cs
- RijndaelManagedTransform.cs
- BamlCollectionHolder.cs
- UpdatePanelTriggerCollection.cs
- ImageSourceConverter.cs
- SqlWebEventProvider.cs
- ArraySubsetEnumerator.cs
- SQLByte.cs
- DataControlLinkButton.cs
- PrintPageEvent.cs
- PasswordTextContainer.cs
- ConfigurationSection.cs
- GPRECT.cs
- BatchParser.cs
- DetailsViewRowCollection.cs
- SchemaCollectionPreprocessor.cs
- StrokeNodeEnumerator.cs
- DataSourceUtil.cs
- XmlChildNodes.cs
- RenderData.cs
- ReadWriteSpinLock.cs
- Single.cs
- WorkflowRuntimeService.cs
- FirewallWrapper.cs
- querybuilder.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- DecimalAnimation.cs
- DocumentApplication.cs
- DrawingDrawingContext.cs
- XmlIncludeAttribute.cs
- XPathNode.cs
- XmlAttributeProperties.cs
- SynchronizedDispatch.cs
- GuidConverter.cs
- DeviceFiltersSection.cs
- SqlWebEventProvider.cs
- Byte.cs
- WebBrowser.cs
- ComboBoxAutomationPeer.cs
- SizeAnimationClockResource.cs
- XamlSerializer.cs
- OperationSelectorBehavior.cs
- DateTimeFormatInfoScanner.cs
- TemplateKey.cs
- Regex.cs
- CustomValidator.cs
- SqlTriggerAttribute.cs
- mactripleDES.cs
- ProgressBar.cs
- CodeGotoStatement.cs
- InputScope.cs
- BitmapCodecInfoInternal.cs
- ScalarOps.cs
- DataControlCommands.cs
- ValuePattern.cs
- COM2PropertyDescriptor.cs
- StateBag.cs
- CookieProtection.cs
- WebControlToolBoxItem.cs
- MeshGeometry3D.cs
- MappingException.cs
- ImageSourceConverter.cs
- PathParser.cs
- ScriptingRoleServiceSection.cs
- DefaultClaimSet.cs
- _ListenerAsyncResult.cs
- XmlSchemaComplexType.cs
- WebHeaderCollection.cs
- TimeSpanConverter.cs
- VisualBasicSettingsConverter.cs
- IfJoinedCondition.cs
- ExpressionTextBox.xaml.cs
- InitializationEventAttribute.cs
- AssemblyCache.cs
- IISUnsafeMethods.cs
- QueryReaderSettings.cs
- IntSecurity.cs
- ProvideValueServiceProvider.cs
- ConnectionsZone.cs
- ColorTranslator.cs
- contentDescriptor.cs
- XmlSchemaElement.cs
- CommonProperties.cs
- EntityDataSourceViewSchema.cs
- PropertyInformationCollection.cs
- CodeSnippetStatement.cs
- ParallelDesigner.xaml.cs
- ConditionChanges.cs
- SoapFormatter.cs