Code:
/ FX-1434 / FX-1434 / 1.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
- _SSPISessionCache.cs
- SelectionItemPatternIdentifiers.cs
- DataGridPreparingCellForEditEventArgs.cs
- MessagePartDescription.cs
- IgnoreDeviceFilterElement.cs
- DocumentOrderQuery.cs
- EndpointDiscoveryMetadataCD1.cs
- InternalResources.cs
- ResourceCodeDomSerializer.cs
- EntityDataSourceStatementEditorForm.cs
- FormatPage.cs
- SmtpFailedRecipientException.cs
- QilCloneVisitor.cs
- ConfigurationManager.cs
- ProcessRequestArgs.cs
- ListViewItem.cs
- RtfToXamlLexer.cs
- XmlUnspecifiedAttribute.cs
- RewritingProcessor.cs
- DeclarativeExpressionConditionDeclaration.cs
- ComponentManagerBroker.cs
- CodeVariableDeclarationStatement.cs
- RootContext.cs
- QuadraticBezierSegment.cs
- XmlResolver.cs
- XmlEnumAttribute.cs
- isolationinterop.cs
- TemplateBindingExpressionConverter.cs
- ThreadStaticAttribute.cs
- CqlErrorHelper.cs
- PostBackTrigger.cs
- Authorization.cs
- AttachedPropertyMethodSelector.cs
- ReadWriteObjectLock.cs
- ReflectPropertyDescriptor.cs
- PageSettings.cs
- NonBatchDirectoryCompiler.cs
- NavigationWindowAutomationPeer.cs
- Serialization.cs
- SystemIcmpV4Statistics.cs
- CoTaskMemUnicodeSafeHandle.cs
- ThicknessAnimationBase.cs
- ViewStateAttachedPropertyFeature.cs
- AlphabeticalEnumConverter.cs
- MergePropertyDescriptor.cs
- ColorConvertedBitmapExtension.cs
- CommandManager.cs
- TabItem.cs
- EmptyReadOnlyDictionaryInternal.cs
- StorageSetMapping.cs
- WebPartZoneCollection.cs
- Misc.cs
- GatewayIPAddressInformationCollection.cs
- Encoder.cs
- DefaultSection.cs
- DataGridViewIntLinkedList.cs
- LinqToSqlWrapper.cs
- HttpHandler.cs
- EntityDataSourceView.cs
- LinqDataSource.cs
- RawKeyboardInputReport.cs
- BoundField.cs
- FlowNode.cs
- MetadataArtifactLoader.cs
- QueryContext.cs
- HelpEvent.cs
- SourceSwitch.cs
- __TransparentProxy.cs
- srgsitem.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- TextBox.cs
- CreateCardRequest.cs
- SqlBuilder.cs
- FrameworkObject.cs
- ModuleConfigurationInfo.cs
- DbDeleteCommandTree.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- DESCryptoServiceProvider.cs
- DetailsViewCommandEventArgs.cs
- CodeIndexerExpression.cs
- OrderByBuilder.cs
- TextPenaltyModule.cs
- HeaderElement.cs
- ParsedAttributeCollection.cs
- Pair.cs
- ClonableStack.cs
- TreeSet.cs
- PolicyException.cs
- FixedSOMContainer.cs
- WebServiceReceiveDesigner.cs
- Model3D.cs
- TextBoxRenderer.cs
- BitmapEffectOutputConnector.cs
- EntityDataSourceChangingEventArgs.cs
- BamlVersionHeader.cs
- ApplicationSecurityManager.cs
- WpfMemberInvoker.cs
- MediaCommands.cs
- AmbientValueAttribute.cs
- ToolStripButton.cs