private CharSequence generatePrimitiveProperty( final String containingClassName, final String propertyName, final Token token, final String indent) { final StringBuilder sb = new StringBuilder(); sb.append(generatePrimitiveFieldMetaData(propertyName, token, indent)); if (token.isConstantEncoding()) { sb.append(generateConstPropertyMethods(propertyName, token, indent)); } else { sb.append(generatePrimitivePropertyMethods(containingClassName, propertyName, token, indent)); } return sb; }
private CharSequence generatePrimitiveProperty(final String propertyName, final Token token, final String indent) { final StringBuilder sb = new StringBuilder(); sb.append(generatePrimitiveFieldMetaData(propertyName, token, indent + INDENT)); if (token.isConstantEncoding()) { sb.append(generateConstPropertyMethods(propertyName, token, indent)); } else { sb.append(generatePrimitivePropertyMethods(propertyName, token, indent)); } return sb; }
public static List<NamedToken> gatherNamedNonConstantFieldTokens(final List<Token> fields) { final List<NamedToken> namedTokens = new ArrayList<>(); forEachField(fields, (f, t) -> { if (!f.isConstantEncoding()) { namedTokens.add(new NamedToken(f.name(), t)); } }); return namedTokens; } }
public static SplitCompositeTokens splitInnerTokens(final List<Token> tokens) { final List<Token> constantTokens = new ArrayList<>(); final List<NamedToken> namedNonConstantTokens = new ArrayList<>(); for (int i = 1, end = tokens.size() - 1; i < end; ) { final Token encodingToken = tokens.get(i); if (encodingToken.isConstantEncoding()) { constantTokens.add(encodingToken); } else { namedNonConstantTokens.add(new NamedToken(encodingToken.name(), encodingToken)); } i += encodingToken.componentTokenCount(); } return new SplitCompositeTokens(constantTokens, namedNonConstantTokens); } }
private CharSequence generatePrimitiveEncoder( final String containingClassName, final String propertyName, final Token token, final String indent) { final StringBuilder sb = new StringBuilder(); final String formattedPropertyName = formatPropertyName(propertyName); sb.append(generatePrimitiveFieldMetaData(formattedPropertyName, token, indent)); if (!token.isConstantEncoding()) { sb.append(generatePrimitivePropertyEncodeMethods( containingClassName, formattedPropertyName, token, indent)); } else { sb.append(generateConstPropertyMethods(formattedPropertyName, token, indent)); } return sb; }
private CharSequence generatePrimitiveDecoder( final boolean inComposite, final String propertyName, final Token propertyToken, final Token encodingToken, final String indent) { final StringBuilder sb = new StringBuilder(); final String formattedPropertyName = formatPropertyName(propertyName); sb.append(generatePrimitiveFieldMetaData(formattedPropertyName, encodingToken, indent)); if (encodingToken.isConstantEncoding()) { sb.append(generateConstPropertyMethods(formattedPropertyName, encodingToken, indent)); } else { sb.append(generatePrimitivePropertyDecodeMethods( inComposite, formattedPropertyName, propertyToken, encodingToken, indent)); } return sb; }
if (!headerToken.isConstantEncoding())
if (fieldToken.isConstantEncoding())
private static PrimitiveValue constOrNotPresentValue(final Token token, final int actingVersion) { final Encoding encoding = token.encoding(); if (token.isConstantEncoding()) { return encoding.constValue(); } else if (token.isOptionalEncoding() && actingVersion < token.version()) { return encoding.applicableNullValue(); } return null; }
if (typeToken.isConstantEncoding())
if (!fieldToken.isConstantEncoding()) if (t.isConstantEncoding())
private static PrimitiveValue constOrNotPresentValue(final Token token, final int actingVersion) { if (token.isConstantEncoding()) { return token.encoding().constValue(); } else if (token.isOptionalEncoding() && actingVersion < token.version()) { return token.encoding().applicableNullValue(); } return null; }
if (typeToken.encodedLength() <= 0 || typeToken.isConstantEncoding())
if (fieldToken.isConstantEncoding())
private CharSequence generateEnumEncoder( final String containingClassName, final String propertyName, final Token token, final String indent) { if (token.isConstantEncoding()) { return ""; } final String enumName = formatClassName(token.applicableTypeName()); final Encoding encoding = token.encoding(); final int offset = token.offset(); return String.format("\n" + indent + " public %s %s(final %s value)\n" + indent + " {\n" + indent + " %s;\n" + indent + " return this;\n" + indent + " }\n", formatClassName(containingClassName), propertyName, enumName, generatePut(encoding.primitiveType(), "offset + " + offset, "value.value()", byteOrderString(encoding))); }
signalToken.encodedLength())); if (signalToken.isConstantEncoding())
final Encoding encoding = typeToken.encoding(); if (fieldToken.isConstantEncoding())
final String byteOrderStr = generateByteOrder(byteOrder, token.encoding().primitiveType().size()); if (signalToken != null && signalToken.isConstantEncoding())