@@ -1009,6 +1009,15 @@ private CharSequence generatePrimitiveFieldMetaData(final String propertyName, f
10091009 propertyName ,
10101010 generateLiteral (primitiveType , token .encoding ().applicableMaxValue ().toString ())));
10111011
1012+  sb .append (String .format (
1013+  "\n "  +
1014+  indent  + " static SBE_CONSTEXPR const std::size_t %1$sEncodingLength(void)\n "  +
1015+  indent  + " {\n "  +
1016+  indent  + " return %2$d;\n "  +
1017+  indent  + " }\n " ,
1018+  propertyName ,
1019+  token .encoding ().primitiveType ().size ()));
1020+ 
10121021 return  sb ;
10131022 }
10141023
@@ -1441,6 +1450,14 @@ private CharSequence generateFields(final String containingClassName, final List
14411450 propertyName ,
14421451 (long )signalToken .version ()));
14431452
1453+  sb .append (String .format (
1454+  indent  + " static SBE_CONSTEXPR const std::size_t %1$sEncodingOffset(void)\n "  +
1455+  indent  + " {\n "  +
1456+  indent  + " return %2$d;\n "  +
1457+  indent  + " }\n \n " ,
1458+  propertyName ,
1459+  encodingToken .offset ()));
1460+ 
14441461 generateFieldMetaAttributeMethod (sb , signalToken , indent );
14451462
14461463 switch  (encodingToken .signal ())
@@ -1568,6 +1585,14 @@ private CharSequence generateEnumProperty(
15681585 typeName ,
15691586 offset ,
15701587 formatByteOrderEncoding (token .encoding ().byteOrder (), token .encoding ().primitiveType ())));
1588+ 
1589+  sb .append (String .format (
1590+  indent  + " static SBE_CONSTEXPR const std::size_t %1$sEncodingLength(void)\n "  +
1591+  indent  + " {\n "  +
1592+  indent  + " return %2$d;\n "  +
1593+  indent  + " }\n " ,
1594+  propertyName ,
1595+  token .encoding ().primitiveType ().size ()));
15711596 }
15721597
15731598 return  sb ;
@@ -1594,11 +1619,20 @@ private static Object generateBitsetProperty(final String propertyName, final To
15941619 indent  + " {\n "  +
15951620 indent  + " m_%2$s.wrap(m_buffer, m_offset + %3$d, m_actingVersion, m_bufferLength);\n "  +
15961621 indent  + " return m_%2$s;\n "  +
1597-  indent  + " }\n " ,
1622+  indent  + " }\n \n " ,
15981623 bitsetName ,
15991624 propertyName ,
16001625 offset ));
16011626
1627+  sb .append (String .format (
1628+  "\n "  +
1629+  indent  + " static SBE_CONSTEXPR const std::size_t %1$sEncodingLength(void)\n "  +
1630+  indent  + " {\n "  +
1631+  indent  + " return %2$d;\n "  +
1632+  indent  + " }\n " ,
1633+  propertyName ,
1634+  token .encoding ().primitiveType ().size ()));
1635+ 
16021636 return  sb ;
16031637 }
16041638
0 commit comments