C# Class Pchp.CodeAnalysis.CodeGen.CodeGenerator.WriteBackInfo

Temporary data used to call routines that expect ref or out parameters when given variable can't be passed by ref.
Mostra file Open project: iolevel/peachpie

Public Properties

Property Type Description
Target Pchp.CodeAnalysis.Semantics.BoundReferenceExpression
TmpLocal Microsoft.CodeAnalysis.CodeGen.LocalDefinition

Public Methods

Method Description
CreateAndLoad ( CodeGenerator cg, ParameterSymbol targetp, BoundReferenceExpression expr ) : WriteBackInfo

Loads temporary local variable as an argument to targetp.

WriteBackAndFree ( CodeGenerator cg ) : void

Writes the value back to Target and free resources.

WriteBackAndFree ( CodeGenerator cg, IList writebacks ) : void

Private Methods

Method Description
EmitLoadArgument ( CodeGenerator cg, ParameterSymbol targetp ) : void

Method Details

CreateAndLoad() public static method

Loads temporary local variable as an argument to targetp.
public static CreateAndLoad ( CodeGenerator cg, ParameterSymbol targetp, BoundReferenceExpression expr ) : WriteBackInfo
cg CodeGenerator
targetp Pchp.CodeAnalysis.Symbols.ParameterSymbol Target parameter.
expr Pchp.CodeAnalysis.Semantics.BoundReferenceExpression Value to be passed as its argument.
return WriteBackInfo

WriteBackAndFree() public method

Writes the value back to Target and free resources.
public WriteBackAndFree ( CodeGenerator cg ) : void
cg CodeGenerator
return void

WriteBackAndFree() public static method

public static WriteBackAndFree ( CodeGenerator cg, IList writebacks ) : void
cg CodeGenerator
writebacks IList
return void

Property Details

Target public_oe property

Original variable passed to the function call. Target of the write-back routine.
public BoundReferenceExpression,Pchp.CodeAnalysis.Semantics Target
return Pchp.CodeAnalysis.Semantics.BoundReferenceExpression

TmpLocal public_oe property

The temporary local passed by reference to a function call. After the call, it's value has to be written back to Target.
public LocalDefinition,Microsoft.CodeAnalysis.CodeGen TmpLocal
return Microsoft.CodeAnalysis.CodeGen.LocalDefinition