public final String toSchema() { StringBuilder builder = new StringBuilder(); appendDocumentation(builder, documentation()); builder.append(name()) .append(" = ") .append(tag()); if (!options().isEmpty()) { builder.append(" "); Util.appendOptions(builder, options()); } return builder.append(";\n").toString(); }
@Test public void trailingSinglelineComment() { String proto = "" + "enum Test {\n" + " FOO = 1; /* Test all the things! */ \n" + " BAR = 2;/*Test all the things!*/\n" + "}"; ProtoFileElement parsed = ProtoParser.parse(location, proto); EnumElement enumElement = (EnumElement) parsed.types().get(0); EnumConstantElement foo = enumElement.constants().get(0); assertThat(foo.documentation()).isEqualTo("Test all the things!"); EnumConstantElement bar = enumElement.constants().get(1); assertThat(bar.documentation()).isEqualTo("Test all the things!"); }
@Test public void enumValueLeadingAndTrailingCommentsAreCombined() { String proto = "" + "enum Test {\n" + " // Test all...\n" + " FOO = 1; // ...the things!\n" + "}"; ProtoFileElement parsed = ProtoParser.parse(location, proto); EnumElement enumElement = (EnumElement) parsed.types().get(0); EnumConstantElement value = enumElement.constants().get(0); assertThat(value.documentation()).isEqualTo("Test all...\n...the things!"); }
@Test public void trailingMultilineComment() { String proto = "" + "enum Test {\n" + " FOO = 1; /* Test all the\n" + "things! */ \n" + "}"; ProtoFileElement parsed = ProtoParser.parse(location, proto); EnumElement enumElement = (EnumElement) parsed.types().get(0); EnumConstantElement value = enumElement.constants().get(0); assertThat(value.documentation()).isEqualTo("Test all the\nthings!"); }
@Test public void trailingCommentNotCombinedWhenEmpty() { String proto = "" + "enum Test {\n" + " // Test all...\n" + " FOO = 1; // \n" + "}"; ProtoFileElement parsed = ProtoParser.parse(location, proto); EnumElement enumElement = (EnumElement) parsed.types().get(0); EnumConstantElement value = enumElement.constants().get(0); assertThat(value.documentation()).isEqualTo("Test all..."); }
@Test public void enumValueTrailingComment() { String proto = "" + "enum Test {\n" + " FOO = 1; // Test all the things! \n" + "}"; ProtoFileElement parsed = ProtoParser.parse(location, proto); EnumElement enumElement = (EnumElement) parsed.types().get(0); EnumConstantElement value = enumElement.constants().get(0); assertThat(value.documentation()).isEqualTo("Test all the things!"); }
static EnumConstant fromElement(EnumConstantElement element) { return new EnumConstant(element.location(), element.name(), element.tag(), element.documentation(), new Options(Options.ENUM_VALUE_OPTIONS, element.options())); }
public final String toSchema() { StringBuilder builder = new StringBuilder(); appendDocumentation(builder, documentation()); builder.append(name()) .append(" = ") .append(tag()); if (!options().isEmpty()) { builder.append(" [\n"); formatOptionList(builder, options()); builder.append(']'); } return builder.append(";\n").toString(); }
public final String toSchema() { StringBuilder builder = new StringBuilder(); appendDocumentation(builder, documentation()); builder.append(name()) .append(" = ") .append(tag()); if (!options().isEmpty()) { builder.append(" [\n"); formatOptionList(builder, options()); builder.append(']'); } return builder.append(";\n").toString(); }
@Override public boolean equals(Object o) { if (o == this) { return true; } if (o instanceof EnumConstantElement) { EnumConstantElement that = (EnumConstantElement) o; return (this.location.equals(that.location())) && (this.name.equals(that.name())) && (this.tag == that.tag()) && (this.documentation.equals(that.documentation())) && (this.options.equals(that.options())); } return false; }
Builder(EnumConstantElement source) { this.location = source.location(); this.name = source.name(); this.tag = source.tag(); this.documentation = source.documentation(); this.options = source.options(); } @Override
static EnumConstant fromElement(EnumConstantElement element) { return new EnumConstant(element.location(), element.name(), element.tag(), element.documentation(), new Options(Options.ENUM_VALUE_OPTIONS, element.options())); }
static EnumConstant fromElement(EnumConstantElement element) { return new EnumConstant(element.location(), element.name(), element.tag(), element.documentation(), new Options(Options.ENUM_VALUE_OPTIONS, element.options())); }