public void CompileVariableDecl(VariableDecl varDecl) { XmlElement tmpElement = document.CreateElement("VariableDecl"); ProcessPropertyInitializers(tmpElement, varDecl.Initializers); currentElement.AppendChild(tmpElement); }
public void VariableSetTest() { // Create a new text document TextDocument td = new TextDocument(); td.New(); // Create a variable declaration VariableDecl vd = new VariableDecl(td, VariableValueType.String, "test"); td.VariableDeclarations.Add(vd); // add a variable-set field Paragraph p1 = new Paragraph(td); p1.Content.Add(new VariableSet(td, vd, "test variable-set")); td.Content.Add(p1); // saveload test using (IPackageWriter writer = new OnDiskPackageWriter()) { td.Save(AARunMeFirstAndOnce.outPutFolder + "varset.odt", new OpenDocumentTextExporter(writer)); } using (IPackageReader reader = new OnDiskPackageReader()) { td.Load(AARunMeFirstAndOnce.outPutFolder + "varset.odt", new OpenDocumentImporter(reader)); using (IPackageWriter writer = new OnDiskPackageWriter()) { td.Save(AARunMeFirstAndOnce.outPutFolder + "varset2.odt", new OpenDocumentTextExporter(writer)); } } }
public void VariableDeclTest() { // Create a new text document TextDocument td = new TextDocument(); td.New(); // Declare two variables VariableDecl vd = new VariableDecl(td, VariableValueType.String, "test"); VariableDecl vd2 = new VariableDecl(td, VariableValueType.Float, "12.3"); td.VariableDeclarations.Add(vd); td.VariableDeclarations.Add(vd2); td.SaveTo(AARunMeFirstAndOnce.outPutFolder + "vardecls.odt"); TextDocument td2 = new TextDocument(); // Reload the document and make some changes td2.Load(AARunMeFirstAndOnce.outPutFolder + "vardecls.odt"); td2.VariableDeclarations[0].Name = "xyz"; td2.VariableDeclarations.Add(new VariableDecl(td, VariableValueType.String, "test222")); // Unzip the document and check its content.xml file! td2.SaveTo(AARunMeFirstAndOnce.outPutFolder + "vardecls2.odt"); }
public void VariableDeclTest() { // Create a new text document TextDocument td = new TextDocument(); td.New(); // Declare two variables VariableDecl vd = new VariableDecl(td, VariableValueType.String, "test"); VariableDecl vd2 = new VariableDecl(td, VariableValueType.Float, "12.3"); td.VariableDeclarations.Add(vd); td.VariableDeclarations.Add(vd2); using (IPackageWriter writer = new OnDiskPackageWriter()) { td.Save(AARunMeFirstAndOnce.outPutFolder + "vardecls.odt", new OpenDocumentTextExporter(writer)); } TextDocument td2 = new TextDocument(); // Reload the document and make some changes using (IPackageReader reader = new OnDiskPackageReader()) { td2.Load(AARunMeFirstAndOnce.outPutFolder + "vardecls.odt", new OpenDocumentImporter(reader)); td2.VariableDeclarations[0].Name = "xyz"; td2.VariableDeclarations.Add(new VariableDecl(td, VariableValueType.String, "test222")); // Unzip the document and check its content.xml file! using (IPackageWriter writer = new OnDiskPackageWriter()) { td2.Save(AARunMeFirstAndOnce.outPutFolder + "vardecls2.odt", new OpenDocumentTextExporter(writer)); } } }
/* creates new list of variables declaration from old List<VariableDecl> and new VariableDecl */ private List <VariableDecl> VariableDecls(object decls, VariableDecl vardecl) { var newdecls = (decls != null)?(new List <VariableDecl>((List <VariableDecl>)decls)):(new List <VariableDecl>()); if (vardecl != null) { newdecls.Insert(0, vardecl); } return(newdecls); }
/// <summary> /// Generates test case code for the specified code model. /// </summary> /// <param name="cmg">The code model for which to create code.</param> /// <returns>Root node of the AST.</returns> public static Node GenerateTests(CodeModelGo cmg) { var file = new File(); var packageName = $"{cmg.Namespace}tests"; file.AddChild(new Comment($"Package {packageName} contains test functions for package {cmg.Namespace}.")); file.AddChild(new Package(packageName)); var imports = GetImports(cmg); file.AddChild(imports); file.AddChild(new Terminal()); TestFunctionRpc.TypeAddedEvent = (Core.Model.IModelType modelType) => { if (modelType is PrimaryTypeGo) { var ptg = modelType as PrimaryTypeGo; if (!string.IsNullOrWhiteSpace(ptg.Import)) { var imp = new ImportEntry(ptg.Import); if (!imports.Contains(imp)) { imports.AddChild(imp); } } } }; file.AddChild(VariableDecl.Generate(LoggerVarName, "*log.Logger")); file.AddChild(new Terminal()); var rpcTypeName = cmg.Name; var suiteDef = GetServerReceiver(rpcTypeName); file.AddChild(new Comment($"{suiteDef.Item2} is used to dispatch functions calls via JSON-RPC.")); file.AddChild(suiteDef.Item1); file.AddChild(new Terminal()); file.AddChild(new Comment("RegisterServer enables RPC.")); file.AddChild(GetRegisterServer(suiteDef.Item2)); file.AddChild(new Terminal()); var goMethods = cmg.Methods.Cast <MethodGo>().OrderBy(mg => mg.SerializedName.ToString()); foreach (var method in goMethods) { var testFunc = TestFunctionRpc.Generate(method, rpcTypeName, RawResponseTypeName, ToRawResponseFuncName, LoggerVarName); file.AddChild(new Comment($"{testFunc.Item2} is a test function for the matching operation ID.")); file.AddChild(testFunc.Item1); file.AddChild(new Terminal()); } return(file); }
public void CompileVariableDecl(VariableDecl varDecl) { textWriter.Write("var "); for (int i = 0; i < varDecl.Initializers.Length; ++i) { if (i > 0) { textWriter.Write(", "); } DumpPropertyInitializer(varDecl.Initializers[i]); } textWriter.WriteLine(";"); }
public override bool Equals(object obj) { if (!(obj is VariableDecl)) { return(false); } VariableDecl other = (VariableDecl)obj; if (Field != other.Field || Local != other.Local || (Base == null) != (other.Base == null)) { return(false); } if (Base == null) { return(true); } return(Base == other.Base); }
public void VariableSetTest() { // Create a new text document TextDocument td = new TextDocument(); td.New(); // Create a variable declaration VariableDecl vd = new VariableDecl(td, VariableValueType.String, "test"); td.VariableDeclarations.Add(vd); // add a variable-set field Paragraph p1 = new Paragraph(td); p1.Content.Add(new VariableSet(td, vd, "test variable-set")); td.Content.Add(p1); // saveload test td.SaveTo(AARunMeFirstAndOnce.outPutFolder + "varset.odt"); td.Load(AARunMeFirstAndOnce.outPutFolder + "varset.odt"); td.SaveTo(AARunMeFirstAndOnce.outPutFolder + "varset2.odt"); }
public VariableDecl(AFieldDecl field, AALocalDecl local, VariableDecl @base) { Field = field; Local = local; Base = @base; }
public override void OutAStructLvalue(AStructLvalue node) { currentDecl = new VariableDecl(null, data.StructFieldLinks[node], currentDecl); }
public override void OutALocalLvalue(ALocalLvalue node) { currentDecl = new VariableDecl(null, data.LocalLinks[node], null); }
public override void OutAFieldLvalue(AFieldLvalue node) { currentDecl = new VariableDecl(data.FieldLinks[node], null, null); }