- Mono JScript .Net Compiler
+ Mono JScript .Net Compiler
Cesar Lopez Nataren
(cesar@ciencias.unam.mx)
Lexical Analysis: We use the Antlr [1] lexer generator for
producing the one needed for our compiler. But, the Microsoft.JScript
-namespace, exposes some clases related to that task. Those are:
+namespace, exposes some classes related to that task. Those are:
- JSToken
- JSScanner
- Context
- Enum
- Equality
- Eval
-- ForIn
-- FunctionDeclaration
+- ForIn *
+- FunctionDeclaration (used at runtime, too).
- FunctionExpression
-- Import *
+- Import (used at runtime,too).
- JSParser
- JScriptParser is the parser generated by Antlr.
- Literal
+- NumericBinary (used at runtime, too).
- Package
- Print
- ScriptBlock
- ScriptObject
- IActivationObject
+Some other execution support classes:
+- JSLocalField
+- JSFunctionAttribute
+- JSFunctionAttributeEnum
+
Object System:
- JSObject
- BooleanObject
+- ArrayObject
- DateObject
- EnumeratorObject
- ErrorObject
+- EvalErrorObject
+- FunctionObject
+- GlobalObject
+- IActivationObject
- JSPrototypeObject
- MathObject
- NumberObject
- StringObject
- VBArrayObject
-
+- ArrayPrototype
+- BooleanPrototype
+- DatePrototype
+- EnumeratorPrototype
+- ErrorPrototype
+- FunctionPrototype
+- NumberPrototype
+- ObjectPrototype
+- RegExPrototype
+- StringPrototype
+- VBArrayPrototype
+
+
+Non-strict object system:
+- LenientGlobalObject
+- LenientMathObject
+
+- LenientArrayPrototype
+- LenientBooleanPrototype
+- LenientDatePrototype
+- LenientEnumeratorPrototype
+- LenientErrorPrototype
+- LenientFunctionPrototype
+- LenientMathObject
+- LenientNumberPrototype
+- LenientObjectPrototype
+- LenientRegExpPrototype
+- LenientStringPrototype
+- LenientVBArrayPrototype
I/O support:
- ScriptStream