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

A direct field access.
Наследование: IBoundReference
Показать файл Открыть проект

Private Properties

Свойство Тип Описание

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

Метод Описание
BoundFieldPlace ( BoundExpression instance, FieldSymbol field, BoundExpression boundref ) : Devsense.PHP.Syntax
EmitLoad ( CodeGenerator cg ) : TypeSymbol
EmitLoadPrepare ( CodeGenerator cg, InstanceCacheHolder instanceOpt ) : void
EmitOpCode ( CodeGenerator cg, ILOpCode code ) : void

Emits ldfld, stfld, ldflda, ldsfld, stsfld.

EmitOpCode_Load ( CodeGenerator cg ) : void
EmitOpCode_LoadAddress ( CodeGenerator cg ) : void
EmitOpCode_Store ( CodeGenerator cg ) : void
EmitStore ( CodeGenerator cg, TypeSymbol valueType ) : void
EmitStorePrepare ( CodeGenerator cg, InstanceCacheHolder instanceOpt ) : void

Защищенные методы

Метод Описание
EmitLoadFieldInstance ( CodeGenerator cg, InstanceCacheHolder instanceOpt ) : void

Emits instance of the field containing class.

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

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

public BoundFieldPlace ( BoundExpression instance, FieldSymbol field, BoundExpression boundref ) : Devsense.PHP.Syntax
instance Pchp.CodeAnalysis.Semantics.BoundExpression
field Pchp.CodeAnalysis.Symbols.FieldSymbol
boundref Pchp.CodeAnalysis.Semantics.BoundExpression
Результат Devsense.PHP.Syntax

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

public EmitLoad ( CodeGenerator cg ) : TypeSymbol
cg CodeGenerator
Результат TypeSymbol

EmitLoadFieldInstance() защищенный Метод

Emits instance of the field containing class.
protected EmitLoadFieldInstance ( CodeGenerator cg, InstanceCacheHolder instanceOpt ) : void
cg CodeGenerator
instanceOpt InstanceCacheHolder
Результат void

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

public EmitLoadPrepare ( CodeGenerator cg, InstanceCacheHolder instanceOpt ) : void
cg CodeGenerator
instanceOpt InstanceCacheHolder
Результат void

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

Emits ldfld, stfld, ldflda, ldsfld, stsfld.
public EmitOpCode ( CodeGenerator cg, ILOpCode code ) : void
cg CodeGenerator
code ILOpCode ld* or st* OP code.
Результат void

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

public EmitOpCode_Load ( CodeGenerator cg ) : void
cg CodeGenerator
Результат void

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

public EmitOpCode_LoadAddress ( CodeGenerator cg ) : void
cg CodeGenerator
Результат void

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

public EmitOpCode_Store ( CodeGenerator cg ) : void
cg CodeGenerator
Результат void

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

public EmitStore ( CodeGenerator cg, TypeSymbol valueType ) : void
cg CodeGenerator
valueType TypeSymbol
Результат void

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

public EmitStorePrepare ( CodeGenerator cg, InstanceCacheHolder instanceOpt ) : void
cg CodeGenerator
instanceOpt InstanceCacheHolder
Результат void