Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- SecurityPermission.cs
- CustomActivityDesigner.cs
- BitArray.cs
- DocumentGridPage.cs
- ObservableCollection.cs
- LinqDataSourceSelectEventArgs.cs
- ListBindableAttribute.cs
- StrokeNode.cs
- DataSourceProvider.cs
- CompositeCollectionView.cs
- GraphicsState.cs
- ConfigXmlDocument.cs
- InternalBase.cs
- SystemGatewayIPAddressInformation.cs
- SetIterators.cs
- RuleSetCollection.cs
- ImageAnimator.cs
- XamlUtilities.cs
- ListBoxItemAutomationPeer.cs
- NavigationWindowAutomationPeer.cs
- ExpandedWrapper.cs
- BigInt.cs
- PackageProperties.cs
- MultiBindingExpression.cs
- _ContextAwareResult.cs
- Label.cs
- FrameworkTextComposition.cs
- ShutDownListener.cs
- UnionCodeGroup.cs
- DateTimeConstantAttribute.cs
- FontSource.cs
- ResourceContainer.cs
- LongSumAggregationOperator.cs
- HtmlInputFile.cs
- OrderByBuilder.cs
- LinqDataSourceContextData.cs
- WebPartsPersonalization.cs
- ObjectAssociationEndMapping.cs
- ScrollEvent.cs
- XmlCharType.cs
- SqlCacheDependencySection.cs
- Win32Native.cs
- EventRoute.cs
- SqlProviderServices.cs
- ImageButton.cs
- WindowsAuthenticationModule.cs
- InfoCardProofToken.cs
- PersonalizablePropertyEntry.cs
- Model3D.cs
- BitConverter.cs
- InvalidChannelBindingException.cs
- ObjectDataSourceSelectingEventArgs.cs
- XmlEnumAttribute.cs
- FacetValueContainer.cs
- TemplateBamlRecordReader.cs
- AQNBuilder.cs
- SafeNativeMethods.cs
- String.cs
- RegexGroup.cs
- FixedSOMElement.cs
- DataGridTextBox.cs
- QueryRewriter.cs
- InstallerTypeAttribute.cs
- HttpWriter.cs
- _CommandStream.cs
- Cursors.cs
- BezierSegment.cs
- ExecutedRoutedEventArgs.cs
- ConstructorNeedsTagAttribute.cs
- ResizeGrip.cs
- MdiWindowListStrip.cs
- Privilege.cs
- TreeNodeCollection.cs
- TextCompositionManager.cs
- TreeIterator.cs
- AutomationAttributeInfo.cs
- LocalizabilityAttribute.cs
- StandardOleMarshalObject.cs
- CultureSpecificStringDictionary.cs
- PropertyToken.cs
- Application.cs
- RoutedEventValueSerializer.cs
- BoundsDrawingContextWalker.cs
- DeclaredTypeValidator.cs
- TextTreeTextElementNode.cs
- Cursor.cs
- DataGridColumnCollection.cs
- SrgsDocument.cs
- SynchronizationLockException.cs
- DBNull.cs
- WebPartDisplayModeEventArgs.cs
- VisualStyleRenderer.cs
- AsymmetricCryptoHandle.cs
- XamlRtfConverter.cs
- DeferredElementTreeState.cs
- TextWriterTraceListener.cs
- BindingCollection.cs
- NetPeerTcpBindingCollectionElement.cs
- _IPv6Address.cs
- ListSourceHelper.cs