C# Class LSharp.Compiler

Compile an L Sharp program. Eventually change this to IL Generation
Show file 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 static property

public static Symbol,LSharp FN
return LSharp.Symbol

PROGN public static property

public static Symbol,LSharp PROGN
return LSharp.Symbol

QUASIQUOTE public static property

public static Symbol,LSharp QUASIQUOTE
return LSharp.Symbol

UNQUOTE public static property

public static Symbol,LSharp UNQUOTE
return LSharp.Symbol

UNQUOTE_SPLICING public static property

public static Symbol,LSharp UNQUOTE_SPLICING
return LSharp.Symbol