Example #1
0
 /// <summary>
 /// string[] 配列で与えられたコードからASTを生成します。
 /// </summary>
 /// <param name="lines">Code lines</param>
 public void Parse(string[] lines)
 {
     lines = lines.Where(x => !x.StartsWith("//"))
             .Select(x => x.IndexOf("//") > 0 ? x.Remove(x.IndexOf("//")) : x)
             .ToArray();
     AST = new FulynProg()
     {
         Members = ParseBase(PreProcess(lines)).OrderByDescending(x => x.GetType() == typeof(Declare)).ToArray()
     };
 }
Example #2
0
 public FulynCompiler(string outputFile)
 {
     ms  = File.Open(outputFile, FileMode.OpenOrCreate, FileAccess.Write);
     ose = new OSEGenerator(ms, FulynOption.SilentMode, FulynOption.ReadableMode);
     AST = new FulynProg();
 }