public Value GetValue(MdlFileContent file) { file.Next(); EnumVal enumVal = new EnumVal(); enumVal.Name = file.Next(); enumVal.Value = int.Parse(file.Next()); file.Next(); return(enumVal); }
public Element GetElement(MdlFileContent file) { file.Next(); string[] p = file.Next().Split(','); Position position = new Position(); position.X = long.Parse(p[0]); position.Y = long.Parse(p[1]); file.Next(); return(position); }
public Value GetValue(MdlFileContent file) { DoubleVal doubleVal = new DoubleVal(); doubleVal.Value = double.Parse(file.Next()); return(doubleVal); }
public Value GetValue(MdlFileContent file) { IntegerVal integerVal = new IntegerVal(); integerVal.Value = int.Parse(file.Next()); return(integerVal); }
public Value GetValue(MdlFileContent file) { StringVal stringVal = new StringVal(); stringVal.Value = file.Next(); return(stringVal); }
public Value GetValue(MdlFileContent file) { BooleanVal booleanVal = new BooleanVal(); booleanVal.Value = bool.Parse(file.Next()); return(booleanVal); }
public Value GetValue(MdlFileContent file) { IdVal idVal = new IdVal(); idVal.Value = int.Parse(file.Next().TrimStart('@')); return(idVal); }
public Value GetValue(MdlFileContent file) { TextVal textVal = new TextVal(); int bracketCount = 0; file.Next(); file.Next(); file.Next(); while (bracketCount > 0 || file.Peek() != ")") { if (file.Peek() == "(") { ++bracketCount; } else if (file.Peek() == ")") { --bracketCount; } textVal.Value += file.Next(); } file.Next(); return(textVal); }
public TypeElement GetTypeElement(MdlFileContent file) { IElementFactory elementFactory = new ElementFactory(); StateMachine.MdlReader.List list = new List(); list.Type = file.Next(); while (file.Peek() != ")") { list.Elements.Add(elementFactory.GetElement(file)); } return(list); }
public TypeElement GetTypeElement(MdlFileContent file) { Object obj = new Object(); obj.Type = file.Next(); IValueFactory valueFactory = new ValueFactory(); if (file.Peek() != "\n") { obj.Name = file.Next(); if (file.Peek() != "\n") { obj.SecondName = file.Next(); } } file.Next(); while (file.Peek() != ")") { while (string.IsNullOrWhiteSpace(file.Peek())) { file.Next(); } Property property = new Property(); property.Name = file.Next(); property.Value = valueFactory.GetValue(file); obj.Properties.Add(property); } return(obj); }
public TypeElement GetTypeElement(MdlFileContent file) { file.Next(); string s = file.Next(); ITypeElementFactory typeElementFactory; if (s.StartsWith("object")) { typeElementFactory = new ObjectFactory(); } else if (s.StartsWith("list")) { typeElementFactory = new ListFactory(); } else { typeElementFactory = new ValueElementFactory(); } TypeElement typeElement = typeElementFactory.GetTypeElement(file); file.Next(); return(typeElement); }
public MDLFile Parse() { IElementFactory elementFactory = new ElementFactory(); MdlFileContent mdlFileContent = new MdlFileContent(path); MDLFile file = new MDLFile(); while (!mdlFileContent.EndOfFile) { if (string.IsNullOrWhiteSpace(mdlFileContent.Peek())) { mdlFileContent.Next(); continue; } file.Elements.Add(elementFactory.GetElement(mdlFileContent)); } return(file); }
public Element GetElement(MdlFileContent file) { IElementFactory elementFactory; while (!file.EndOfFile && string.IsNullOrWhiteSpace(file.Peek())) { file.Next(); } if (file.Content[file.Index] == "(" && regex.IsMatch(file.Content[file.Index + 1])) { elementFactory = new PositionFactory(); } else { elementFactory = new TypeElementFactory(); } return(elementFactory.GetElement(file)); }