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
- CutCopyPasteHelper.cs
- XPathParser.cs
- ReachDocumentReferenceCollectionSerializer.cs
- _Win32.cs
- ToolStripItem.cs
- CookieProtection.cs
- XmlSchemaSimpleTypeUnion.cs
- ViewGenerator.cs
- ExpressionBuilderCollection.cs
- MissingSatelliteAssemblyException.cs
- PropertyStore.cs
- CollectionMarkupSerializer.cs
- WorkflowViewElement.cs
- ListBoxItemAutomationPeer.cs
- DataControlField.cs
- compensatingcollection.cs
- KnownTypes.cs
- ParameterToken.cs
- MissingManifestResourceException.cs
- TableRow.cs
- _Semaphore.cs
- SevenBitStream.cs
- ViewLoader.cs
- WriteableBitmap.cs
- CharEntityEncoderFallback.cs
- TablePatternIdentifiers.cs
- InlineCollection.cs
- ScaleTransform3D.cs
- StylusButtonCollection.cs
- CommunicationObjectFaultedException.cs
- OleDbStruct.cs
- Object.cs
- ObjectAssociationEndMapping.cs
- AutomationElement.cs
- Label.cs
- PhysicalAddress.cs
- ParameterExpression.cs
- SafeBitVector32.cs
- TrackingProfileSerializer.cs
- KeyValuePairs.cs
- _NetworkingPerfCounters.cs
- WindowsUpDown.cs
- WebServiceClientProxyGenerator.cs
- UserControlParser.cs
- Buffer.cs
- TypeForwardedToAttribute.cs
- MarshalDirectiveException.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- XmlJsonWriter.cs
- LayoutTableCell.cs
- NavigationExpr.cs
- TextSpan.cs
- Ipv6Element.cs
- ObjectDataSourceChooseTypePanel.cs
- documentsequencetextpointer.cs
- AuthorizationSection.cs
- BooleanAnimationBase.cs
- HttpCachePolicyElement.cs
- CLRBindingWorker.cs
- SettingsAttributeDictionary.cs
- CompositeFontInfo.cs
- BaseTransportHeaders.cs
- StoryFragments.cs
- EventLogPermission.cs
- WsatServiceCertificate.cs
- Vector3DCollectionValueSerializer.cs
- Odbc32.cs
- DesignerListAdapter.cs
- FormViewPageEventArgs.cs
- SecuritySessionSecurityTokenProvider.cs
- SelectionWordBreaker.cs
- ClientTargetCollection.cs
- DataServiceQueryProvider.cs
- ObjectResult.cs
- EventLogReader.cs
- TransformerTypeCollection.cs
- EntityContainerEmitter.cs
- ChannelServices.cs
- ByteStack.cs
- nulltextcontainer.cs
- XmlDataSourceView.cs
- AssemblyName.cs
- XmlSchemaGroupRef.cs
- DrawingCollection.cs
- ResourceDescriptionAttribute.cs
- InvokeWebService.cs
- MemberAssignmentAnalysis.cs
- XsltException.cs
- SafeNativeMethodsOther.cs
- SocketPermission.cs
- CodeGenerator.cs
- HttpGetProtocolImporter.cs
- StateChangeEvent.cs
- BaseConfigurationRecord.cs
- ComponentSerializationService.cs
- RuleSetReference.cs
- XmlStreamStore.cs
- DataFormat.cs
- AsyncPostBackErrorEventArgs.cs
- Vector.cs