protected virtual bool VisitFieldDeclaration(FieldDeclarationContext ctx) { var fieldNameNodes = ctx.Descendants().OfType <VariableDeclaratorIdContext>().ToList(); foreach (var node in fieldNameNodes) { var identifier = node.Identifier(); _rewriter.Replace(identifier.Symbol, identifier.GetText().Pascalize()); } return(true); }
private void ParseNode(IParseTree node) { if (node is PackageDeclarationContext packageContext) { string name = this.GetNodeName(packageContext); this.WriteKeyValue("Package", name); } else if (node is ImportDeclarationContext importContext) { string name = this.GetNodeName(importContext); this.WriteKeyValue("Import", name); } else if (node is TypeDeclarationContext typeContext) { foreach (var child in typeContext.children) { if (child is InterfaceDeclarationContext) { InterfaceDeclarationContext interfaceContext = child as InterfaceDeclarationContext; string name = interfaceContext.IDENTIFIER().GetText(); this.WriteLine(); this.WriteKeyValue("Interface", name); this.WriteBeginBrace(); var members = interfaceContext.interfaceBody().interfaceBodyDeclaration().Select(item => item.interfaceMemberDeclaration()); foreach (InterfaceMemberDeclarationContext member in members) { var constContext = member.constDeclaration(); if (constContext != null) { string constName = constContext.constantDeclarator(0).IDENTIFIER().GetText(); this.WriteLine($"Const field:{constName}"); } InterfaceMethodDeclarationContext method = member.interfaceMethodDeclaration(); if (method != null) { string methodName = method.IDENTIFIER().GetText(); this.WriteKeyValue("Method", methodName); } } this.WriteEndBrace(); } else if (child is ClassDeclarationContext) { ClassDeclarationContext classContext = child as ClassDeclarationContext; string name = this.GetNodeName(classContext); this.WriteLine(); this.WriteLine($"Class:{name}"); this.WriteBeginBrace(); var members = classContext.classBody().classBodyDeclaration().Select(item => item.memberDeclaration()); foreach (MemberDeclarationContext member in members) { FieldDeclarationContext field = member.fieldDeclaration(); if (field != null) { string fieldName = field.variableDeclarators().GetText(); this.WriteKeyValue("Field", fieldName); } MethodDeclarationContext method = member.methodDeclaration(); if (method != null) { string methodName = method.IDENTIFIER().GetText(); this.WriteKeyValue("Method", methodName); } } this.WriteEndBrace(); } } } }