@Override public String toString() { if (value != null) return "'" + value + "'"; if (name != null) return name; return new ProductionFormatter<ProdElement, String>().format(StringProduction.this, this); } }
public String format(Production<ELEMENT, TOKEN> adapter, ELEMENT grammarElement, boolean needParenthesis) { TOKEN token = adapter.getToken(grammarElement); if (token != null) { String cardinality = getCardinality(adapter, grammarElement); if (cardinality == null) return tokenToString.apply(token); return tokenToString.apply(token) + cardinality; } Iterable<ELEMENT> alternative = adapter.getAlternativeChildren(grammarElement); if (alternative != null) return format(adapter, grammarElement, alternative, " | ", false, needParenthesis, 5); Iterable<ELEMENT> group = adapter.getSequentialChildren(grammarElement); if (group != null) return format(adapter, grammarElement, group, " ", false, needParenthesis, 5); Iterable<ELEMENT> ungroup = adapter.getUnorderedChildren(grammarElement); if (ungroup != null) return format(adapter, grammarElement, ungroup, " & ", false, needParenthesis, 5); return "<unknown>"; }
@Override public String toString() { if (this == INVALID) return "INVALID"; if (this == TYPEMATCH) return "TYPEMATCH"; if (type == null) return "error(type is null)"; GrammarElementTitleSwitch t2s = new GrammarElementTitleSwitch().hideCardinality().showActionsAsRuleCalls() .showAssignments(); ProductionFormatter<IConstraintElement, AbstractElement> formatter = new ProductionFormatter<IConstraintElement, AbstractElement>(); formatter.setTokenToString(t2s); return formatter.format(new ConstraintElementProduction(getContainingConstraint()), this, true); }
public String format(Production<ELEMENT, TOKEN> adapter, ELEMENT grammarElement) { return format(adapter, grammarElement, false); }
}.setTokenToString(tokenToString).setAutoWrapChars(200).setAutoWrapChildren(20); GrammarAlias.AbstractElementAlias _ambiguousSyntax = trans.getAmbiguousSyntax(); final GrammarAlias.GrammarAliasAdapter adapter = new GrammarAlias.GrammarAliasAdapter(_ambiguousSyntax); return formatter.format(adapter, adapter.getRoot(), false); } catch (final Throwable _t) { if (_t instanceof Exception) {
@Override public String toString() { GrammarElementTitleSwitch t2s = new GrammarElementTitleSwitch().showAssignments().hideCardinality(); Function<Production<AbstractElementAlias, AbstractElement>, String> formatter2 = new ProductionFormatter<AbstractElementAlias, AbstractElement>() .setTokenToString(t2s); return formatter2.apply(new GrammarAliasAdapter(this)); } }
@Override public String toString() { Function<Production<AbstractElementAlias<T>, T>, String> formatter = new ProductionFormatter<AbstractElementAlias<T>, T>(); return formatter.apply(new AliasGrammarProvider<T>(this)); }
public String format(Production<ELEMENT, TOKEN> adapter, ELEMENT grammarElement, boolean needParenthesis) { TOKEN token = adapter.getToken(grammarElement); if (token != null) { String cardinality = getCardinality(adapter, grammarElement); if (cardinality == null) return tokenToString.apply(token); return tokenToString.apply(token) + cardinality; } Iterable<ELEMENT> alternative = adapter.getAlternativeChildren(grammarElement); if (alternative != null) return format(adapter, grammarElement, alternative, " | ", false, needParenthesis); Iterable<ELEMENT> group = adapter.getSequentialChildren(grammarElement); if (group != null) return format(adapter, grammarElement, group, " ", false, needParenthesis); Iterable<ELEMENT> ungroup = adapter.getUnorderedChildren(grammarElement); if (ungroup != null) return format(adapter, grammarElement, ungroup, " & ", false, needParenthesis); return "<unknown>"; }
@Override public String apply(Production<ELEMENT, TOKEN> from) { return format(from); }
@Override public String toString() { Function<Production<AbstractElementAlias<T>, T>, String> formatter = new ProductionFormatter<AbstractElementAlias<T>, T>(); return formatter.apply(new AliasGrammarProvider<T>(this)); }
@Override public String toString() { if (root == null) return "null"; return new ProductionFormatter<ProdElement, String>().format(this); }
protected String format(Production<ELEMENT, TOKEN> adapter, ELEMENT element, Iterable<ELEMENT> children, String separator, boolean needWrap, boolean needParenthesis) { List<String> childStrs2 = Lists.newArrayList(); int width2 = 0; for (ELEMENT child : children) { String childStr = format(adapter, child, true); childStrs2.add(childStr); width2 += childStr.length(); if (childStr.contains("\n")) needWrap = true; } if (childStrs2.size() > autoWrapChildren) needWrap = true; if (width2 > autoWrapChars) needWrap = true; String cardinality = getCardinality(adapter, element); if (needWrap) { for (int i = 0; i < childStrs2.size(); i++) childStrs2.set(i, childStrs2.get(i).replaceAll("\\n", "\n" + indent)); String body = Joiner.on(separator + "\n" + indent).join(childStrs2); return "(\n" + indent + body + "\n)" + (cardinality == null ? "" : cardinality); } else { if (cardinality != null && childStrs2.size() > 1) needParenthesis = true; String body = Joiner.on(separator).join(childStrs2); if (needParenthesis) return "(" + body + ")" + (cardinality == null ? "" : cardinality); return body; } }
public String format(Production<ELEMENT, TOKEN> adapter, ELEMENT grammarElement) { return format(adapter, grammarElement, false); }
@Override public String toString() { if (value != null) return "'" + value + "'"; if (name != null) return name; return new ProductionFormatter<ProdElement, String>().format(StringProduction.this, this); } }
protected String format(Production<ELEMENT, TOKEN> adapter, ELEMENT element, Iterable<ELEMENT> children, String separator, boolean needWrap, boolean needParenthesis, int maxChildren) { List<String> childStrs2 = Lists.newArrayList(); int width2 = 0; for (ELEMENT child : children) { String childStr = format(adapter, child, true); childStrs2.add(childStr); width2 += childStr.length(); if (childStr.contains("\n")) needWrap = true; } if (childStrs2.size() > maxChildren) needWrap = true; if (width2 > autoWrapChars) needWrap = true; String cardinality = getCardinality(adapter, element); if (needWrap) { for (int i = 0; i < childStrs2.size(); i++) childStrs2.set(i, childStrs2.get(i).replaceAll("\\n", "\n" + indent)); String body = Joiner.on(separator + "\n" + indent).join(childStrs2); return "(\n" + indent + body + "\n)" + (cardinality == null ? "" : cardinality); } else { if (cardinality != null && childStrs2.size() > 1) needParenthesis = true; String body = Joiner.on(separator).join(childStrs2); if (needParenthesis) return "(" + body + ")" + (cardinality == null ? "" : cardinality); return body; } }
public String apply(Production<ELEMENT, TOKEN> from) { return format(from); }
@Override public String toString() { if (root == null) return "null"; return new ProductionFormatter<ProdElement, String>().format(this); }
_switchResult = super.format(adapter, grammarElement, needParenthesis);
@Override public String toString() { List<String> result = Lists.newArrayList(); ProductionFormatter<ProdElement, String> fmt = new ProductionFormatter<ProdElement, String>(); for (Entry<String, ProdElement> e : rules.entrySet()) result.add(e.getKey() + ": " + fmt.format(this, e.getValue())); return Joiner.on('\n').join(result); }
public String format(Production<ELEMENT, TOKEN> adapter) { return format(adapter, adapter.getRoot()); }