Skip to content

Commit 5fb5a18

Browse files
committed
[C++] Make access listener methods private.
Also, fix some indentation issues.
1 parent d33e54b commit 5fb5a18

File tree

1 file changed

+50
-40
lines changed

1 file changed

+50
-40
lines changed

sbe-tool/src/main/java/uk/co/real_logic/sbe/generation/cpp/CppGenerator.java

+50-40
Original file line numberDiff line numberDiff line change
@@ -259,18 +259,20 @@ private static void generateAccessOrderListenerMethod(
259259
final String constDeclaration = canChangeState(accessOrderModel, fieldAccess) ? "" : " const";
260260

261261
sb.append("\n")
262-
.append(indent).append("void ").append(accessOrderListenerMethodName(token)).append("()")
262+
.append(indent).append("private:\n")
263+
.append(indent).append(INDENT).append("void ").append(accessOrderListenerMethodName(token)).append("()")
263264
.append(constDeclaration).append("\n")
264-
.append(indent).append("{\n");
265+
.append(indent).append(INDENT).append("{\n");
265266

266267
generateAccessOrderListener(
267268
sb,
268-
indent + INDENT,
269+
indent + TWO_INDENT,
269270
"access field",
270271
accessOrderModel,
271272
fieldAccess);
272273

273-
sb.append(indent).append("}\n");
274+
sb.append(indent).append(INDENT).append("}\n\n")
275+
.append(indent).append("public:");
274276
}
275277

276278
private static boolean canChangeState(
@@ -349,38 +351,40 @@ private static void generateAccessOrderListenerMethodForGroupWrap(
349351
}
350352

351353
sb.append("\n")
352-
.append(indent).append("void ").append(accessOrderListenerMethodName(token))
354+
.append(indent).append("private:\n")
355+
.append(indent).append(INDENT).append("void ").append(accessOrderListenerMethodName(token))
353356
.append("(std::uint64_t remaining, std::string action)\n")
354-
.append(indent).append("{\n")
355-
.append(indent).append(INDENT).append("if (0 == remaining)\n")
356-
.append(indent).append(INDENT).append("{\n");
357+
.append(indent).append(INDENT).append("{\n")
358+
.append(indent).append(TWO_INDENT).append("if (0 == remaining)\n")
359+
.append(indent).append(TWO_INDENT).append("{\n");
357360

358361
final AccessOrderModel.CodecInteraction selectEmptyGroup =
359362
accessOrderModel.interactionFactory().determineGroupIsEmpty(token);
360363

361364
generateAccessOrderListener(
362365
sb,
363-
indent + TWO_INDENT,
366+
indent + THREE_INDENT,
364367
"\" + action + \" count of repeating group",
365368
accessOrderModel,
366369
selectEmptyGroup);
367370

368-
sb.append(indent).append(INDENT).append("}\n")
369-
.append(indent).append(INDENT).append("else\n")
370-
.append(indent).append(INDENT).append("{\n");
371+
sb.append(indent).append(TWO_INDENT).append("}\n")
372+
.append(indent).append(TWO_INDENT).append("else\n")
373+
.append(indent).append(TWO_INDENT).append("{\n");
371374

372375
final AccessOrderModel.CodecInteraction selectNonEmptyGroup =
373376
accessOrderModel.interactionFactory().determineGroupHasElements(token);
374377

375378
generateAccessOrderListener(
376379
sb,
377-
indent + TWO_INDENT,
380+
indent + THREE_INDENT,
378381
"\" + action + \" count of repeating group",
379382
accessOrderModel,
380383
selectNonEmptyGroup);
381384

382-
sb.append(indent).append(INDENT).append("}\n")
383-
.append(indent).append("}\n");
385+
sb.append(indent).append(TWO_INDENT).append("}\n")
386+
.append(indent).append(INDENT).append("}\n\n")
387+
.append(indent).append("public:");
384388
}
385389

386390
private static void generateAccessOrderListenerMethodForVarDataLength(
@@ -395,21 +399,23 @@ private static void generateAccessOrderListenerMethodForVarDataLength(
395399
}
396400

397401
sb.append("\n")
398-
.append(indent).append("void ").append(accessOrderListenerMethodName(token, "Length"))
402+
.append(indent).append("private:\n")
403+
.append(indent).append(INDENT).append("void ").append(accessOrderListenerMethodName(token, "Length"))
399404
.append("() const\n")
400-
.append(indent).append("{\n");
405+
.append(indent).append(INDENT).append("{\n");
401406

402407
final AccessOrderModel.CodecInteraction accessLength =
403408
accessOrderModel.interactionFactory().accessVarDataLength(token);
404409

405410
generateAccessOrderListener(
406411
sb,
407-
indent + INDENT,
412+
indent + TWO_INDENT,
408413
"decode length of var data",
409414
accessOrderModel,
410415
accessLength);
411416

412-
sb.append(indent).append("}\n");
417+
sb.append(indent).append(INDENT).append("}\n\n")
418+
.append(indent).append("public:");
413419
}
414420

415421
private static void generateAccessOrderListener(
@@ -487,38 +493,38 @@ private static void generateAccessOrderListenerMethodForNextGroupElement(
487493

488494
sb.append("\n");
489495

490-
sb.append(indent).append("void onNextElementAccessed()\n")
491-
.append(indent).append("{\n")
492-
.append(indent).append(INDENT).append("std::uint64_t remaining = m_count - m_index;\n")
493-
.append(indent).append(INDENT).append("if (remaining > 1)\n")
494-
.append(indent).append(INDENT).append("{\n");
496+
sb.append(indent).append(INDENT).append("void onNextElementAccessed()\n")
497+
.append(indent).append(INDENT).append("{\n")
498+
.append(indent).append(TWO_INDENT).append("std::uint64_t remaining = m_count - m_index;\n")
499+
.append(indent).append(TWO_INDENT).append("if (remaining > 1)\n")
500+
.append(indent).append(TWO_INDENT).append("{\n");
495501

496502
final AccessOrderModel.CodecInteraction selectNextElementInGroup =
497503
accessOrderModel.interactionFactory().moveToNextElement(token);
498504

499505
generateAccessOrderListener(
500506
sb,
501-
indent + TWO_INDENT,
507+
indent + THREE_INDENT,
502508
"access next element in repeating group",
503509
accessOrderModel,
504510
selectNextElementInGroup);
505511

506-
sb.append(indent).append(INDENT).append("}\n")
507-
.append(indent).append(INDENT).append("else if (1 == remaining)\n")
508-
.append(indent).append(INDENT).append("{\n");
512+
sb.append(indent).append(TWO_INDENT).append("}\n")
513+
.append(indent).append(TWO_INDENT).append("else if (1 == remaining)\n")
514+
.append(indent).append(TWO_INDENT).append("{\n");
509515

510516
final AccessOrderModel.CodecInteraction selectLastElementInGroup =
511517
accessOrderModel.interactionFactory().moveToLastElement(token);
512518

513519
generateAccessOrderListener(
514520
sb,
515-
indent + TWO_INDENT,
521+
indent + THREE_INDENT,
516522
"access next element in repeating group",
517523
accessOrderModel,
518524
selectLastElementInGroup);
519525

520-
sb.append(indent).append(INDENT).append("}\n")
521-
.append(indent).append("}\n");
526+
sb.append(indent).append(TWO_INDENT).append("}\n")
527+
.append(indent).append(INDENT).append("}\n");
522528
}
523529

524530
private static void generateAccessOrderListenerMethodForResetGroupCount(
@@ -532,20 +538,21 @@ private static void generateAccessOrderListenerMethodForResetGroupCount(
532538
return;
533539
}
534540

535-
sb.append(indent).append("void onResetCountToIndex()\n")
536-
.append(indent).append("{\n");
541+
sb.append("\n")
542+
.append(indent).append(INDENT).append("void onResetCountToIndex()\n")
543+
.append(indent).append(INDENT).append("{\n");
537544

538545
final AccessOrderModel.CodecInteraction resetCountToIndex =
539546
accessOrderModel.interactionFactory().resetCountToIndex(token);
540547

541548
generateAccessOrderListener(
542549
sb,
543-
indent + " ",
550+
indent + TWO_INDENT,
544551
"reset count of repeating group",
545552
accessOrderModel,
546553
resetCountToIndex);
547554

548-
sb.append(indent).append("}\n");
555+
sb.append(indent).append(INDENT).append("}\n");
549556
}
550557

551558
private void generateGroups(
@@ -759,8 +766,11 @@ private static void generateGroupClassHeader(
759766
codecStateNullAssignment);
760767
}
761768

762-
generateAccessOrderListenerMethodForNextGroupElement(sb, accessOrderModel, indent + INDENT, groupToken);
769+
770+
sb.append("\n").append(indent).append("private:");
771+
generateAccessOrderListenerMethodForNextGroupElement(sb, accessOrderModel, indent, groupToken);
763772
generateAccessOrderListenerMethodForResetGroupCount(sb, accessOrderModel, indent, groupToken);
773+
sb.append("\n").append(indent).append("public:");
764774

765775
final CharSequence onNextAccessOrderCall = null == accessOrderModel ? "" :
766776
generateAccessOrderListenerCall(accessOrderModel, indent + TWO_INDENT, "onNextElementAccessed");
@@ -883,7 +893,7 @@ private static void generateGroupProperty(
883893
generateAccessOrderListenerMethodForGroupWrap(
884894
sb,
885895
accessOrderModel,
886-
indent + INDENT,
896+
indent,
887897
token
888898
);
889899
}
@@ -995,7 +1005,7 @@ private void generateVarData(
9951005
generateVarDataDescriptors(
9961006
sb, token, propertyName, characterEncoding, lengthOfLengthField, indent);
9971007

998-
generateAccessOrderListenerMethodForVarDataLength(sb, accessOrderModel, indent + INDENT, token);
1008+
generateAccessOrderListenerMethodForVarDataLength(sb, accessOrderModel, indent, token);
9991009

10001010
final CharSequence lengthAccessListenerCall = generateAccessOrderListenerCall(
10011011
accessOrderModel, indent + TWO_INDENT,
@@ -1016,7 +1026,7 @@ private void generateVarData(
10161026
lengthCppType,
10171027
lengthAccessListenerCall);
10181028

1019-
generateAccessOrderListenerMethod(sb, accessOrderModel, indent + INDENT, token);
1029+
generateAccessOrderListenerMethod(sb, accessOrderModel, indent, token);
10201030

10211031
final CharSequence accessOrderListenerCall =
10221032
generateAccessOrderListenerCall(accessOrderModel, indent + TWO_INDENT, token);
@@ -3114,7 +3124,7 @@ private void generateFields(
31143124
generateFieldMetaAttributeMethod(sb, signalToken, indent);
31153125
generateFieldCommonMethods(indent, sb, signalToken, encodingToken, propertyName);
31163126

3117-
generateAccessOrderListenerMethod(sb, accessOrderModel, indent + INDENT, signalToken);
3127+
generateAccessOrderListenerMethod(sb, accessOrderModel, indent, signalToken);
31183128

31193129
switch (encodingToken.signal())
31203130
{

0 commit comments

Comments
 (0)