/// <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() }; }
public FulynCompiler(string outputFile) { ms = File.Open(outputFile, FileMode.OpenOrCreate, FileAccess.Write); ose = new OSEGenerator(ms, FulynOption.SilentMode, FulynOption.ReadableMode); AST = new FulynProg(); }