C# Class Pchp.CodeAnalysis.SourceCompiler

Performs compilation of all source methods.
Mostrar archivo Open project: iolevel/peachpie Class Usage Examples

Public Methods

Method Description
CompileSources ( PhpCompilation compilation, PEModuleBuilder moduleBuilder, bool emittingPdb, bool hasDeclarationErrors, DiagnosticBag diagnostics, CancellationToken cancellationToken ) : void

Private Methods

Method Description
AnalysisFactory ( ) : ExpressionAnalysis
AnalyzeBlock ( BoundBlock block ) : void
AnalyzeMethods ( ) : void
CompileEntryPoint ( CancellationToken cancellationToken ) : void
CompileReflectionEnumerators ( CancellationToken cancellationToken ) : void
EmitMethodBodies ( ) : void
EmitMethodBody ( SourceRoutineSymbol routine ) : void

Generates analyzed method.

EmitSynthesized ( ) : void
EnqueueExpression ( BoundExpression expression, TypeRefContext ctx, NamingContext naming ) : void

Enqueues the standalone expression for analysis.

EnqueueFieldsInitializer ( SourceTypeSymbol type ) : void

Enqueues initializers of a class fields and constants.

EnqueueRoutine ( SourceRoutineSymbol routine ) : void

Enqueues routine's start block for analysis.

ReanalyzeMethods ( ) : void
SourceCompiler ( PhpCompilation compilation, PEModuleBuilder moduleBuilder, bool emittingPdb, DiagnosticBag diagnostics ) : Devsense.PHP.Syntax
WalkMethods ( Action action ) : void
WalkTypes ( Action action ) : void

Method Details

CompileSources() public static method

public static CompileSources ( PhpCompilation compilation, PEModuleBuilder moduleBuilder, bool emittingPdb, bool hasDeclarationErrors, DiagnosticBag diagnostics, CancellationToken cancellationToken ) : void
compilation PhpCompilation
moduleBuilder Pchp.CodeAnalysis.Emit.PEModuleBuilder
emittingPdb bool
hasDeclarationErrors bool
diagnostics DiagnosticBag
cancellationToken System.Threading.CancellationToken
return void