C# Class Microsoft.CodeAnalysis.CodeGen.LocalSlotManager

At this level there are two kinds of local variables: Locals - have identities by which consuming code refers to them. Typical use is a local variable or a compiler generated temp that can be accessed in multiple operations. Any object can be used as identity. Reference equality is used. Temps - do not have identity. They are borrowed and returned to the free list. Typical use is a scratch temporary or spilling storage.
ファイルを表示 Open project: stark-lang/stark-roslyn Class Usage Examples

Private Properties

Property Type Description
AllocateSlot Microsoft.CodeAnalysis.CodeGen.LocalDefinition
DeclareLocal Microsoft.CodeAnalysis.CodeGen.LocalDefinition
DeclareLocalImpl Microsoft.CodeAnalysis.CodeGen.LocalDefinition
FreeLocal void
FreeSlot void
GetLocal Microsoft.CodeAnalysis.CodeGen.LocalDefinition

Public Methods

Method Description
LocalSlotManager ( Microsoft.CodeAnalysis.CodeGen.VariableSlotAllocator slotAllocatorOpt ) : System
LocalsInOrder ( ) : ImmutableArray

Private Methods

Method Description
AllocateSlot ( Cci.ITypeReference type, LocalSlotConstraints constraints, ImmutableArray dynamicTransformFlags = default(ImmutableArray<bool>), ImmutableArray tupleElementNames = default(ImmutableArray<string>) ) : Microsoft.CodeAnalysis.CodeGen.LocalDefinition

Gets a local slot.

DeclareLocal ( Cci.ITypeReference type, ILocalSymbolInternal symbol, string name, SynthesizedLocalKind kind, Microsoft.CodeAnalysis.CodeGen.LocalDebugId id, LocalVariableAttributes pdbAttributes, LocalSlotConstraints constraints, ImmutableArray dynamicTransformFlags, ImmutableArray tupleElementNames, bool isSlotReusable ) : Microsoft.CodeAnalysis.CodeGen.LocalDefinition
DeclareLocalImpl ( Cci.ITypeReference type, ILocalSymbolInternal symbolOpt, string nameOpt, SynthesizedLocalKind kind, Microsoft.CodeAnalysis.CodeGen.LocalDebugId id, LocalVariableAttributes pdbAttributes, LocalSlotConstraints constraints, ImmutableArray dynamicTransformFlags, ImmutableArray tupleElementNames ) : Microsoft.CodeAnalysis.CodeGen.LocalDefinition
FreeLocal ( ILocalSymbol symbol ) : void

Release a local slot by its symbol. Slot is not associated with symbol after this.

FreeSlot ( Microsoft.CodeAnalysis.CodeGen.LocalDefinition slot ) : void

Frees a local slot.

GetLocal ( ILocalSymbol symbol ) : Microsoft.CodeAnalysis.CodeGen.LocalDefinition

Retrieve a local slot by its symbol.

Method Details

LocalSlotManager() public method

public LocalSlotManager ( Microsoft.CodeAnalysis.CodeGen.VariableSlotAllocator slotAllocatorOpt ) : System
slotAllocatorOpt Microsoft.CodeAnalysis.CodeGen.VariableSlotAllocator
return System

LocalsInOrder() public method

public LocalsInOrder ( ) : ImmutableArray
return ImmutableArray