除了 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.
- 可以學學素心如何天上月 (Yong Sun's Blog)剖析SunPinyin的系列文章,這樣 trace 起來會比較清楚。
- 加上適當 UML Diagram 也是好主意,不過傳圖有點麻煩。
沒有留言:
張貼留言