public void Visit(AST.FieldTypes.InlineObject io) { StructureBuilder structureBuilder = new StructureBuilder(this.Elements); Debug.Assert(!this.Elements.ContainsKey(FieldName), "Crap, we already have a type that has the same name as the field that uses this anonimous type. Typenames should be unique"); var name = FieldName + "_structurue"; structureBuilder.BuildStructure(io, name); structureBuilder.PopulateStructure(io, name); Debug.Assert(this.Elements.ContainsKey(name)); translated_type = this.Elements[name]; CheckIfCollection(); }
public void PopulateStructure(AST.FieldTypes.InlineObject o, String name) { PopulateStructure(name, o.Fields); }
public void Visit(AST.FieldTypes.InlineObject io) { }
public void BuildStructure(AST.FieldTypes.InlineObject o, String name) { Debug.Assert(!Elements.ContainsKey(name), "Element names should be unique"); Elements[name] = new Structure(name); }