C# 클래스 openABAP.Compiler.Compiler

central class of openABAP implementing following feauture: scanning and parsing the abap source file. creating an internal representation of the program using openABAP.Compiler.Command class. building the CIL file assembling the CIL file to EXE-assembly file. calling EXE-file
파일 보기 프로젝트 열기: bi-tm/openABAP 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
CurrentVisibility Visibility
ProgramName string
SourceFileInfo System.IO.FileInfo

공개 메소드들

메소드 설명
Compile ( ) : void

parsers the ABAP source fie and emits a CIL DLL file. the temporary source file is copied into respository

Compiler ( String filename ) : System

Initializes a new instance of the openABAP.Compiler.Compiler class.

DefineClass ( string name ) : void

initialises a new class definition by creating the System.Refelection.Emit.RypeBuilder

DefineField ( string name, TypeDescr type, bool isStatic ) : FieldBuilder
DefineMethod ( Coco t, bool isStatic ) : void

creates a MethodBuilder and stores is in this.mbList

DefineProgram ( string n ) : void

set program name and creates AssemblyBuilder, ModuleBuilder and debug Document

EmitCommand ( ExecutableCommand cmd ) : void
EndClass ( ) : void
EndMethod ( Coco t ) : void

at end the end of a method implementation we mus emit a RET command

GetErrors ( ) : string
GetVariable ( string name ) : IfVariable
ImplementClass ( string name ) : void

loads the TypeBuilder corresponding to the given name. The TypeBuilder is loaded in this.tb to implement it in following calls.

ImplementMethod ( Coco t ) : void

loads the TypeBuilder which was creted during class definition.

Run ( ) : void

starts the generated program. this means scanning all generated classes for a method named "Run" and invoke it.

Save ( ) : void

메소드 상세

Compile() 공개 메소드

parsers the ABAP source fie and emits a CIL DLL file. the temporary source file is copied into respository
public Compile ( ) : void
리턴 void

Compiler() 공개 메소드

Initializes a new instance of the openABAP.Compiler.Compiler class.
public Compiler ( String filename ) : System
filename String Filename.
리턴 System

DefineClass() 공개 메소드

initialises a new class definition by creating the System.Refelection.Emit.RypeBuilder
public DefineClass ( string name ) : void
name string Name.
리턴 void

DefineField() 공개 메소드

public DefineField ( string name, TypeDescr type, bool isStatic ) : FieldBuilder
name string
type TypeDescr
isStatic bool
리턴 System.Reflection.Emit.FieldBuilder

DefineMethod() 공개 메소드

creates a MethodBuilder and stores is in this.mbList
public DefineMethod ( Coco t, bool isStatic ) : void
t Coco T.
isStatic bool
리턴 void

DefineProgram() 공개 메소드

set program name and creates AssemblyBuilder, ModuleBuilder and debug Document
public DefineProgram ( string n ) : void
n string N.
리턴 void

EmitCommand() 공개 메소드

public EmitCommand ( ExecutableCommand cmd ) : void
cmd ExecutableCommand
리턴 void

EndClass() 공개 메소드

public EndClass ( ) : void
리턴 void

EndMethod() 공개 메소드

at end the end of a method implementation we mus emit a RET command
public EndMethod ( Coco t ) : void
t Coco T.
리턴 void

GetErrors() 공개 메소드

public GetErrors ( ) : string
리턴 string

GetVariable() 공개 메소드

public GetVariable ( string name ) : IfVariable
name string
리턴 IfVariable

ImplementClass() 공개 메소드

loads the TypeBuilder corresponding to the given name. The TypeBuilder is loaded in this.tb to implement it in following calls.
public ImplementClass ( string name ) : void
name string Name.
리턴 void

ImplementMethod() 공개 메소드

loads the TypeBuilder which was creted during class definition.
public ImplementMethod ( Coco t ) : void
t Coco T.
리턴 void

Run() 공개 메소드

starts the generated program. this means scanning all generated classes for a method named "Run" and invoke it.
public Run ( ) : void
리턴 void

Save() 공개 메소드

public Save ( ) : void
리턴 void

프로퍼티 상세

CurrentVisibility 공개적으로 프로퍼티

public Visibility CurrentVisibility
리턴 Visibility

ProgramName 공개적으로 프로퍼티

public string ProgramName
리턴 string

SourceFileInfo 공개적으로 프로퍼티

public FileInfo,System.IO SourceFileInfo
리턴 System.IO.FileInfo