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
- DoubleUtil.cs
- Message.cs
- RequestSecurityTokenForGetBrowserToken.cs
- TagNameToTypeMapper.cs
- ArrayTypeMismatchException.cs
- AudioSignalProblemOccurredEventArgs.cs
- ExternalException.cs
- SoapConverter.cs
- WeakReferenceList.cs
- ConfigurationStrings.cs
- BasicBrowserDialog.cs
- __Filters.cs
- DialogWindow.cs
- ProxyGenerationError.cs
- SQLConvert.cs
- codemethodreferenceexpression.cs
- ConnectionProviderAttribute.cs
- MobileResource.cs
- CounterCreationDataConverter.cs
- XmlMembersMapping.cs
- FileStream.cs
- FileDialogCustomPlace.cs
- XPathParser.cs
- FontFamily.cs
- ConstructorNeedsTagAttribute.cs
- TextPenaltyModule.cs
- XmlSerializerSection.cs
- TextTreeDeleteContentUndoUnit.cs
- GuidelineCollection.cs
- RuntimeConfigLKG.cs
- glyphs.cs
- ReplyChannelAcceptor.cs
- FileDialog_Vista_Interop.cs
- LinkClickEvent.cs
- ObjectDataSourceDisposingEventArgs.cs
- InfiniteIntConverter.cs
- FormViewInsertedEventArgs.cs
- DbConnectionStringBuilder.cs
- PageParser.cs
- HtmlTableRow.cs
- StateDesigner.LayoutSelectionGlyph.cs
- IsolatedStorageFileStream.cs
- XMLDiffLoader.cs
- HwndStylusInputProvider.cs
- MsmqException.cs
- BrowserInteropHelper.cs
- DragStartedEventArgs.cs
- VectorCollection.cs
- BoolExpressionVisitors.cs
- OleDbTransaction.cs
- ColorInterpolationModeValidation.cs
- WorkflowDispatchContext.cs
- SectionVisual.cs
- TransportContext.cs
- TextRangeAdaptor.cs
- OleDbPermission.cs
- SqlException.cs
- TableLayoutColumnStyleCollection.cs
- RawStylusSystemGestureInputReport.cs
- VBIdentifierNameEditor.cs
- XmlCDATASection.cs
- HttpListenerContext.cs
- ObjectItemCollection.cs
- BinaryMessageFormatter.cs
- GcHandle.cs
- ServiceManagerHandle.cs
- EventSinkHelperWriter.cs
- UserControl.cs
- XPathParser.cs
- GraphicsContainer.cs
- NativeWindow.cs
- ContainerParagraph.cs
- AnimationException.cs
- InvokeHandlers.cs
- AnnouncementEventArgs.cs
- WebResourceUtil.cs
- XmlUtil.cs
- InvalidAsynchronousStateException.cs
- ItemsPanelTemplate.cs
- CategoryAttribute.cs
- ScrollViewer.cs
- XmlHierarchyData.cs
- ServiceObjectContainer.cs
- StreamReader.cs
- XmlCountingReader.cs
- WaitForChangedResult.cs
- ServiceProviders.cs
- BufferedOutputStream.cs
- CharKeyFrameCollection.cs
- SmtpFailedRecipientException.cs
- ErrorStyle.cs
- Emitter.cs
- TextRunCache.cs
- StatusStrip.cs
- ComponentEditorPage.cs
- EntityTypeEmitter.cs
- ContextDataSourceView.cs
- DropTarget.cs
- OracleConnection.cs
- SqlDataSourceCache.cs