diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2016-07-04 21:53:55 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2016-07-04 21:53:55 +0200 |
commit | c7fb7dfd794700bf6977a907a8612e9b644e4fe4 (patch) | |
tree | 57bd9a7f0499c795cf7aa9ba2f1c08ef406df847 /cmake/elfinfo/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java | |
parent | ead2f1961fc653861a151a033c3cd0657c50af16 (diff) | |
download | intel-quark-d2000-playground-c7fb7dfd794700bf6977a907a8612e9b644e4fe4.tar.gz intel-quark-d2000-playground-c7fb7dfd794700bf6977a907a8612e9b644e4fe4.tar.bz2 intel-quark-d2000-playground-c7fb7dfd794700bf6977a907a8612e9b644e4fe4.tar.xz intel-quark-d2000-playground-c7fb7dfd794700bf6977a907a8612e9b644e4fe4.zip |
o Improved parser.
Diffstat (limited to 'cmake/elfinfo/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java')
-rw-r--r-- | cmake/elfinfo/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/cmake/elfinfo/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java b/cmake/elfinfo/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java new file mode 100644 index 0000000..a975497 --- /dev/null +++ b/cmake/elfinfo/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java @@ -0,0 +1,59 @@ +package io.trygvis.ld; + +import io.trygvis.ld.antlr.GnuLdParserBaseVisitor; +import io.trygvis.ld.antlr.GnuLdParser; +import org.antlr.v4.runtime.tree.ParseTree; + +import java.util.List; + +class StringGnuLdVisitor extends GnuLdParserBaseVisitor<String> { + +// public static String parseName(GnuLdParser.NameContext ctx) { +// return ""; +// } + + /* + public static String parseName(GnuLdParser.NameContext ctx) { + StringGnuLdVisitor v = new StringGnuLdVisitor(); + return v.visit(ctx); + } + + private StringBuilder string = new StringBuilder(); + + @Override + public String visitNamePlain(GnuLdParser.NamePlainContext ctx) { + System.out.println("NameTest.visitNamePlain"); + String s = ctx.NAME().getText(); + string.append(s); + return s; + } + +// @Override +// public String visitName_or_space(GnuLdParser.Name_or_spaceContext ctx) { +// System.out.println("StringGnuLdBaseVisitor.visitName_or_space"); +// +// TerminalNode name = ctx.NAME(); +// String s = name != null ? name.getText() : " "; +// string.append(s); +// return s; +// } + + @Override + public String visitNameQuoted(GnuLdParser.NameQuotedContext ctx) { + System.out.println("StringGnuLdBaseVisitor.visitNameQuoted"); + List<ParseTree> children = ctx.children; + System.out.println("children.size()) = " + children.size()); + + String s = ""; + for (int i = 1; i < children.size() - 1; i++) { + ParseTree part = children.get(i); + System.out.println("part.getText() = " + part.getText()); + s += part.getText(); + } + + return s; +// +// return visitChildren(ctx); + } + */ +} |