diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2016-07-26 00:22:55 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2016-07-26 00:22:55 +0200 |
commit | 128e53d220d97225803d61d86f8e43439563181d (patch) | |
tree | e0d5da8d666c54d1d17e64ee6f52af424129f90d /java/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java | |
download | kicad-utils-128e53d220d97225803d61d86f8e43439563181d.tar.gz kicad-utils-128e53d220d97225803d61d86f8e43439563181d.tar.bz2 kicad-utils-128e53d220d97225803d61d86f8e43439563181d.tar.xz kicad-utils-128e53d220d97225803d61d86f8e43439563181d.zip |
WIP: kicad_gen is a util to generate schematic.h files from KiCAD netlist files.
Current code contains a lexer and parser for KiCAD's netlist files and code to build a tree of the netlist which can be used for generation.
Contains CMake code for integrating the generation into CMake too.
Diffstat (limited to 'java/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java')
-rw-r--r-- | java/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/java/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java b/java/src/main/java/io/trygvis/ld/StringGnuLdVisitor.java new file mode 100644 index 0000000..a975497 --- /dev/null +++ b/java/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); + } + */ +} |