C# Класс Pchp.CodeAnalysis.CodeGen.InstanceCacheHolder

Helper object emitting value of a member instance. Used to avoid repetitious evaluation of the instance in case of BoundCompoundAssignEx or Increment/Decrement.
Наследование: IDisposable
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
Dispose ( ) : void
EmitInstance ( InstanceCacheHolder holderOrNull, CodeGenerator cg, BoundExpression instance ) : TypeSymbol

Emits instance. Caches the result if holder is provided, or loads evaluated instance if holder was initialized already.

EmitInstance ( InstanceCacheHolder holderOrNull, CodeGenerator cg, Func emitter ) : TypeSymbol
EmitName ( InstanceCacheHolder holderOrNull, CodeGenerator cg, BoundExpression name ) : void

Emits name as string. Caches the result if holder is provided, or loads evaluated name if holder was initialized already.

Приватные методы

Метод Описание
EmitInstance ( CodeGenerator cg, Func emitter ) : TypeSymbol

Emits , uses cached value if initialized already.

EmitName ( CodeGenerator cg, BoundExpression name ) : void

Emits name as string, uses cached variable.

Описание методов

Dispose() публичный Метод

public Dispose ( ) : void
Результат void

EmitInstance() публичный статический Метод

Emits instance. Caches the result if holder is provided, or loads evaluated instance if holder was initialized already.
public static EmitInstance ( InstanceCacheHolder holderOrNull, CodeGenerator cg, BoundExpression instance ) : TypeSymbol
holderOrNull InstanceCacheHolder
cg CodeGenerator
instance Pchp.CodeAnalysis.Semantics.BoundExpression
Результат TypeSymbol

EmitInstance() публичный статический Метод

public static EmitInstance ( InstanceCacheHolder holderOrNull, CodeGenerator cg, Func emitter ) : TypeSymbol
holderOrNull InstanceCacheHolder
cg CodeGenerator
emitter Func
Результат TypeSymbol

EmitName() публичный статический Метод

Emits name as string. Caches the result if holder is provided, or loads evaluated name if holder was initialized already.
public static EmitName ( InstanceCacheHolder holderOrNull, CodeGenerator cg, BoundExpression name ) : void
holderOrNull InstanceCacheHolder
cg CodeGenerator
name Pchp.CodeAnalysis.Semantics.BoundExpression
Результат void