4 implementations of IMethodBody
Microsoft.CodeAnalysis (4)
CodeGen\MethodBody.cs (1)
16internal sealed class MethodBody : Cci.IMethodBody
Emit\EditAndContinue\DeletedMethodBody.cs (1)
14internal sealed class DeletedMethodBody(IDeletedMethodDefinition methodDef, ImmutableArray<byte> il) : Cci.IMethodBody
Emit\NoPia\CommonEmbeddedMethod.cs (1)
113private sealed class EmptyBody : Cci.IMethodBody
PEWriter\MethodDefinitionBase.cs (1)
17internal abstract class MethodDefinitionBase : IMethodDefinition, IMethodBody
67 references to IMethodBody
Microsoft.CodeAnalysis (67)
CodeGen\MethodBody.cs (14)
120ImmutableArray<SourceSpan> Cci.IMethodBody.CodeCoverageSpans => _codeCoverageSpans; 122ImmutableArray<Cci.ExceptionHandlerRegion> Cci.IMethodBody.ExceptionRegions => _exceptionHandlers; 124bool Cci.IMethodBody.AreLocalsZeroed => _areLocalsZeroed; 126ImmutableArray<Cci.ILocalDefinition> Cci.IMethodBody.LocalVariables => _locals; 128Cci.IMethodDefinition Cci.IMethodBody.MethodDefinition => _parent; 130StateMachineMoveNextBodyDebugInfo? Cci.IMethodBody.MoveNextBodyInfo => _stateMachineMoveNextDebugInfoOpt; 132ushort Cci.IMethodBody.MaxStack => _maxStack; 138ImmutableArray<Cci.LocalScope> Cci.IMethodBody.LocalScopes => _localScopes; 143Cci.IImportScope? Cci.IMethodBody.ImportScope => _importScopeOpt; 145string? Cci.IMethodBody.StateMachineTypeName => _stateMachineTypeNameOpt; 147ImmutableArray<StateMachineHoistedLocalScope> Cci.IMethodBody.StateMachineHoistedLocalScopes 150ImmutableArray<EncHoistedLocalInfo> Cci.IMethodBody.StateMachineHoistedLocalSlots 153ImmutableArray<Cci.ITypeReference?> Cci.IMethodBody.StateMachineAwaiterSlots 156bool Cci.IMethodBody.HasDynamicLocalVariables => _hasDynamicLocalVariables;
Emit\CommonPEModuleBuilder.cs (5)
39private readonly ConcurrentDictionary<IMethodSymbolInternal, Cci.IMethodBody> _methodBodyMap; 72_methodBodyMap = new ConcurrentDictionary<IMethodSymbolInternal, Cci.IMethodBody>(ReferenceEqualityComparer.Instance); 396internal Cci.IMethodBody? GetMethodBody(IMethodSymbolInternal methodSymbol) 402Cci.IMethodBody? body; 413public void SetMethodBody(IMethodSymbolInternal methodSymbol, Cci.IMethodBody body)
Emit\EditAndContinue\DeletedPEMethodDefinition.cs (1)
89public Cci.IMethodBody GetBody(EmitContext context)
Emit\EditAndContinue\DeletedSourceMethodDefinition.cs (1)
111public IMethodBody GetBody(EmitContext context)
Emit\EditAndContinue\DeltaMetadataWriter.cs (1)
864protected override StandaloneSignatureHandle SerializeLocalVariablesSignature(IMethodBody body)
Emit\NoPia\CommonEmbeddedMethod.cs (21)
100Cci.IMethodBody? Cci.IMethodDefinition.GetBody(EmitContext context) 122ImmutableArray<Cci.ExceptionHandlerRegion> Cci.IMethodBody.ExceptionRegions => 125bool Cci.IMethodBody.HasStackalloc => false; 127bool Cci.IMethodBody.AreLocalsZeroed => false; 129ImmutableArray<Cci.ILocalDefinition> Cci.IMethodBody.LocalVariables => 132Cci.IMethodDefinition Cci.IMethodBody.MethodDefinition => _method; 134ushort Cci.IMethodBody.MaxStack => 0; 136ImmutableArray<byte> Cci.IMethodBody.IL => ImmutableArray<byte>.Empty; 138ImmutableArray<Cci.SequencePoint> Cci.IMethodBody.SequencePoints => ImmutableArray<Cci.SequencePoint>.Empty; 140bool Cci.IMethodBody.HasDynamicLocalVariables => false; 142StateMachineMoveNextBodyDebugInfo Cci.IMethodBody.MoveNextBodyInfo => null; 144ImmutableArray<SourceSpan> Cci.IMethodBody.CodeCoverageSpans => ImmutableArray<SourceSpan>.Empty; 146ImmutableArray<Cci.LocalScope> Cci.IMethodBody.LocalScopes => 149Cci.IImportScope Cci.IMethodBody.ImportScope => null; 151ImmutableArray<StateMachineHoistedLocalScope> Cci.IMethodBody.StateMachineHoistedLocalScopes => 154string Cci.IMethodBody.StateMachineTypeName => null; 156ImmutableArray<EncHoistedLocalInfo> Cci.IMethodBody.StateMachineHoistedLocalSlots => 159ImmutableArray<Cci.ITypeReference> Cci.IMethodBody.StateMachineAwaiterSlots => 162ImmutableArray<EncClosureInfo> Cci.IMethodBody.ClosureDebugInfo => 165ImmutableArray<EncLambdaInfo> Cci.IMethodBody.LambdaDebugInfo => 168ImmutableArray<LambdaRuntimeRudeEditInfo> Cci.IMethodBody.OrderedLambdaRuntimeRudeEdits =>
Emit\NoPia\VtblGap.cs (1)
29Cci.IMethodBody? Cci.IMethodDefinition.GetBody(EmitContext context)
NativePdbWriter\PdbWriter.cs (2)
65public void SerializeDebugInfo(IMethodBody methodBody, StandaloneSignatureHandle localSignatureHandleOpt, CustomDebugInfoWriter customDebugInfoWriter) 156private void DefineNamespaceScopes(IMethodBody methodBody)
PEWriter\CustomDebugInfoWriter.cs (9)
24private IMethodBody _methodBodyWithModuleInfo; 27private IMethodBody _previousMethodBodyWithUsingInfo; 42public bool ShouldForwardNamespaceScopes(EmitContext context, IMethodBody methodBody, MethodDefinitionHandle methodHandle, out IMethodDefinition forwardToMethod) 68IMethodBody methodBody, 165IMethodBody methodBody, 203private static void SerializeDynamicLocalInfo(ref CustomDebugInfoEncoder encoder, IMethodBody methodBody) 245private static void SerializeTupleElementNames(ref CustomDebugInfoEncoder encoder, IMethodBody methodBody) 262private void SerializeNamespaceScopeMetadata(ref CustomDebugInfoEncoder encoder, EmitContext context, IMethodBody methodBody) 291private bool ShouldForwardToPreviousMethodWithUsingInfo(EmitContext context, IMethodBody methodBody)
PEWriter\Members.cs (1)
528IMethodBody? GetBody(EmitContext context);
PEWriter\MetadataVisitor.cs (1)
262public virtual void Visit(IMethodBody methodBody)
PEWriter\MetadataWriter.cs (4)
2967IMethodBody body; 3008private int SerializeMethodBody(MethodBodyStreamEncoder encoder, IMethodBody methodBody, StandaloneSignatureHandle localSignatureHandleOpt, ref UserStringHandle mvidStringHandle, ref Blob mvidStringFixup) 3053protected virtual StandaloneSignatureHandle SerializeLocalVariablesSignature(IMethodBody body) 4163internal static EditAndContinueMethodDebugInformation GetEncMethodDebugInfo(IMethodBody methodBody)
PEWriter\MetadataWriter.DynamicAnalysis.cs (1)
66internal void SerializeMethodCodeCoverageData(IMethodBody? body)
PEWriter\MetadataWriter.PortablePdb.cs (3)
57private void SerializeMethodDebugInfo(IMethodBody bodyOpt, int methodRid, int aggregateMethodRid, StandaloneSignatureHandle localSignatureHandleOpt, ref LocalVariableHandle lastLocalVariableHandle, ref LocalConstantHandle lastLocalConstantHandle) 600private void SerializeStateMachineLocalScopes(IMethodBody methodBody, MethodDefinitionHandle method) 806private void SerializeEncMethodDebugInformation(IMethodBody methodBody, MethodDefinitionHandle method)
PEWriter\MethodDefinitionBase.cs (1)
36public IMethodBody GetBody(EmitContext context) => this;
PEWriter\ReferenceIndexer.cs (1)
108var body = method.GetBody(Context);