星期二, 10月 16, 2007

[Boo]Boo hack(2)

回頭看 Boo.Lang.Compiler.CompilerParameters (就是前面提到的 _parser.Parameters),發現裡面做的事情並不是放參數那麼簡單。
除了 Input 之外,他還負責初始化必要的東西,例如載入預設的 Assembly:mscorlib、System、Boo.Lang.Builtins、Boo.Lang.Compiler~

回到正題,BooCompiler.Run() (前面提到的_parser) 起始 CompilerContext之後,再把 context 傳給 CompilerParameters.Pipeline.Run() 去執行。
_parser.Parameters.Pipeline 早在 AbstractInterpreter 時,就已經初始:Pipelines.Parse.NewParserStep()。

p.s.

沒有留言: