C# Class LSharp.Compiler

Compile an L Sharp program. Eventually change this to IL Generation
显示文件 Open project: RobBlackwell/LSharp

Public Properties

Property Type Description
FN LSharp.Symbol
PROGN LSharp.Symbol
QUASIQUOTE LSharp.Symbol
UNQUOTE LSharp.Symbol
UNQUOTE_SPLICING LSharp.Symbol

Public Methods

Method Description
Compile ( object expr, Environment environment ) : object
Compile1 ( Object s, Environment environment ) : Expression
CompileArgs1 ( object args, Environment environment ) : Expression[]
CompileArgsX ( object args, ParameterInfo p, Environment environment ) : Expression[]
CompileCall ( Pair c, Environment environment ) : Expression
CompileFn ( object stuff, Environment environment ) : Expression
CompileFunctionCall ( Object f, object args, Environment environment ) : Expression
CompileIf ( Object args, Environment environment ) : Expression
CompileInstanceCall ( Sequence expr, Environment environment ) : Expression
CompileMac ( object stuff, Environment environment ) : Expression
CompileQuasiQuote ( ISequence args, Environment environment ) : Expression
CompileQuasiQuote ( int level, object arg, Environment environment ) : object
CompileQuote ( ISequence args, Environment environment ) : Expression
CompileVarRef ( LSharp.Symbol symbol ) : Expression
Eval ( object o, Environment environment ) : Object
FunCall ( object f, object a, Environment environment ) : object
LinqCompile ( Expression expression ) : Object>.Func

Method Details

Compile() public static method

public static Compile ( object expr, Environment environment ) : object
expr object
environment Environment
return object

Compile1() public static method

public static Compile1 ( Object s, Environment environment ) : Expression
s Object
environment Environment
return Expression

CompileArgs1() public static method

public static CompileArgs1 ( object args, Environment environment ) : Expression[]
args object
environment Environment
return Expression[]

CompileArgsX() public static method

public static CompileArgsX ( object args, ParameterInfo p, Environment environment ) : Expression[]
args object
p System.Reflection.ParameterInfo
environment Environment
return Expression[]

CompileCall() public static method

public static CompileCall ( Pair c, Environment environment ) : Expression
c Pair
environment Environment
return Expression

CompileFn() public static method

public static CompileFn ( object stuff, Environment environment ) : Expression
stuff object
environment Environment
return Expression

CompileFunctionCall() public static method

public static CompileFunctionCall ( Object f, object args, Environment environment ) : Expression
f Object
args object
environment Environment
return Expression

CompileIf() public static method

public static CompileIf ( Object args, Environment environment ) : Expression
args Object
environment Environment
return Expression

CompileInstanceCall() public static method

public static CompileInstanceCall ( Sequence expr, Environment environment ) : Expression
expr Sequence
environment Environment
return Expression

CompileMac() public static method

public static CompileMac ( object stuff, Environment environment ) : Expression
stuff object
environment Environment
return Expression

CompileQuasiQuote() public static method

public static CompileQuasiQuote ( ISequence args, Environment environment ) : Expression
args ISequence
environment Environment
return Expression

CompileQuasiQuote() public static method

public static CompileQuasiQuote ( int level, object arg, Environment environment ) : object
level int
arg object
environment Environment
return object

CompileQuote() public static method

public static CompileQuote ( ISequence args, Environment environment ) : Expression
args ISequence
environment Environment
return Expression

CompileVarRef() public static method

public static CompileVarRef ( LSharp.Symbol symbol ) : Expression
symbol LSharp.Symbol
return Expression

Eval() public static method

public static Eval ( object o, Environment environment ) : Object
o object
environment Environment
return Object

FunCall() public static method

public static FunCall ( object f, object a, Environment environment ) : object
f object
a object
environment Environment
return object

LinqCompile() public static method

public static LinqCompile ( Expression expression ) : Object>.Func
expression Expression
return Object>.Func

Property Details

FN public_oe static_oe property

public static Symbol,LSharp FN
return LSharp.Symbol

PROGN public_oe static_oe property

public static Symbol,LSharp PROGN
return LSharp.Symbol

QUASIQUOTE public_oe static_oe property

public static Symbol,LSharp QUASIQUOTE
return LSharp.Symbol

UNQUOTE public_oe static_oe property

public static Symbol,LSharp UNQUOTE
return LSharp.Symbol

UNQUOTE_SPLICING public_oe static_oe property

public static Symbol,LSharp UNQUOTE_SPLICING
return LSharp.Symbol