Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / 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; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BinaryMethodMessage.cs
- ObjectCloneHelper.cs
- Stream.cs
- recordstate.cs
- FileClassifier.cs
- DrawItemEvent.cs
- ProfileGroupSettingsCollection.cs
- XmlNamespaceDeclarationsAttribute.cs
- StrokeRenderer.cs
- TextCollapsingProperties.cs
- FileUpload.cs
- StrongName.cs
- WebUtil.cs
- DictionaryTraceRecord.cs
- HeaderCollection.cs
- DelegateSerializationHolder.cs
- SafePipeHandle.cs
- HtmlElementEventArgs.cs
- PaperSize.cs
- SessionStateItemCollection.cs
- ListViewSelectEventArgs.cs
- XPathNavigatorReader.cs
- _UncName.cs
- RegionData.cs
- Component.cs
- Crc32.cs
- OdbcConnection.cs
- ClassHandlersStore.cs
- EventBindingService.cs
- OleDbEnumerator.cs
- codemethodreferenceexpression.cs
- LinqDataSource.cs
- TextElementEnumerator.cs
- XPathSingletonIterator.cs
- CodeAttributeArgumentCollection.cs
- EnumerableCollectionView.cs
- BaseParaClient.cs
- OdbcConnectionStringbuilder.cs
- DataServiceContext.cs
- TreeNodeConverter.cs
- SAPICategories.cs
- XmlCharType.cs
- IntPtr.cs
- _NativeSSPI.cs
- TemplateComponentConnector.cs
- GridViewCancelEditEventArgs.cs
- ContractMapping.cs
- PtsPage.cs
- XmlSchemaAttribute.cs
- ExtensibleClassFactory.cs
- SqlUserDefinedTypeAttribute.cs
- CodeStatementCollection.cs
- HttpMethodAttribute.cs
- xmlglyphRunInfo.cs
- CacheModeValueSerializer.cs
- SqlUtil.cs
- XmlCharCheckingReader.cs
- infer.cs
- BufferedGraphicsManager.cs
- EncryptedKey.cs
- DllNotFoundException.cs
- OdbcTransaction.cs
- ClientConfigurationHost.cs
- RelatedEnd.cs
- HorizontalAlignConverter.cs
- ActiveXMessageFormatter.cs
- MenuItemStyleCollection.cs
- Component.cs
- AttachInfo.cs
- ListViewItem.cs
- CredentialManagerDialog.cs
- DrawingContextDrawingContextWalker.cs
- TextBox.cs
- Int32CAMarshaler.cs
- PagedDataSource.cs
- DbConnectionPoolCounters.cs
- ExceptionRoutedEventArgs.cs
- SrgsDocumentParser.cs
- CmsUtils.cs
- LocatorPartList.cs
- PolyLineSegmentFigureLogic.cs
- SystemTcpStatistics.cs
- HandleCollector.cs
- AssemblyAssociatedContentFileAttribute.cs
- TextBlock.cs
- Transactions.cs
- BookmarkOptionsHelper.cs
- HostingEnvironmentSection.cs
- SqlFacetAttribute.cs
- httpstaticobjectscollection.cs
- IWorkflowDebuggerService.cs
- Content.cs
- ChildTable.cs
- followingsibling.cs
- StringReader.cs
- MarkedHighlightComponent.cs
- XmlEncoding.cs
- _Win32.cs
- ScrollBarRenderer.cs
- ellipse.cs