public static Graphic LoadSvg(TextReader reader) { var valuesParser = new ValuesParser(); var svgr = new SvgReader(reader, new StylesParser(valuesParser), valuesParser); return(svgr.Graphic); }
Graphic Read(string path) { using (var s = OpenResource(path)) { var valuesParser = new ValuesParser(); var r = new Custom.Parsers.SvgReader(new StreamReader(s), new StylesParser(valuesParser), valuesParser); Assert.GreaterOrEqual(r.Graphic.Children.Count, 0); Assert.Greater(r.Graphic.Size.Width, 1); Assert.Greater(r.Graphic.Size.Height, 1); return(r.Graphic); } }
internal static string ReplaceParameter(string parameter) { if (parameter == null) { return(null); } foreach (var stream in ValuesParser.GetParams(parameter)) { var streamValue = string.Format("instance.parameters.{0}", stream.Substring(1, stream.Length - 2)); parameter = parameter.Replace(stream, streamValue); } return(parameter); }
private static string FormatParameterValue(IParameter param) { switch (param) { case BoolParameter boolParam: return(boolParam.Value ? "true" : "false"); case IntParameter intParam: return(intParam.Value.ToString()); case StringParameter stringParam: return($"\"{stringParam.Value}\""); case ExternalParameter externalParam: IEnumerable <string> parameterValues = ValuesParser.GetParams(externalParam.Value); return(ValueFormatter.ReplaceValues(externalParam.Value, parameterValues, "instance.parameters.{0}")); } throw new NotSupportedException(); }
static void Main(string[] args) { const string SOURCEFILE = @"D:\prj\ANTLR_File_To_Arrray\ANTLR_File_To_Arrray\source1.txt"; using (StreamReader fileStream = new StreamReader(SOURCEFILE)) { AntlrInputStream inputStream = new AntlrInputStream(fileStream); ValuesLexer lexer = new ValuesLexer(inputStream); CommonTokenStream tokenStream = new CommonTokenStream(lexer); ValuesParser parser = new ValuesParser(tokenStream); ValuesParser.ParseContext context = parser.parse(); ValuesListener listener = new ValuesListener(); ParseTreeWalker walker = new ParseTreeWalker(); bool built = parser.BuildParseTree; walker.Walk(listener, context); foreach (double d in listener.doubles) { Console.WriteLine(d); } Console.ReadKey(); } }