@@ -28,18 +28,20 @@ class Renderer {
2828 std::vector<const json*>& get_args (const Bytecode& bc) {
2929 m_tmp_args.clear ();
3030
31- bool hasImm = ((bc.flags & Bytecode::Flag::ValueMask) != Bytecode::Flag::ValuePop);
31+ bool has_imm = ((bc.flags & Bytecode::Flag::ValueMask) != Bytecode::Flag::ValuePop);
3232
3333 // get args from stack
3434 unsigned int pop_args = bc.args ;
35- if (hasImm) --pop_args;
35+ if (has_imm) {
36+ pop_args -= 1 ;
37+ }
3638
3739 for (auto i = std::prev (m_stack.end (), pop_args); i != m_stack.end (); i++) {
3840 m_tmp_args.push_back (&(*i));
3941 }
4042
4143 // get immediate arg
42- if (hasImm ) {
44+ if (has_imm ) {
4345 m_tmp_args.push_back (get_imm (bc));
4446 }
4547
@@ -48,9 +50,12 @@ class Renderer {
4850
4951 void pop_args (const Bytecode& bc) {
5052 unsigned int popArgs = bc.args ;
51- if ((bc.flags & Bytecode::Flag::ValueMask) != Bytecode::Flag::ValuePop)
52- --popArgs;
53- for (unsigned int i = 0 ; i < popArgs; ++i) m_stack.pop_back ();
53+ if ((bc.flags & Bytecode::Flag::ValueMask) != Bytecode::Flag::ValuePop) {
54+ popArgs -= 1 ;
55+ }
56+ for (unsigned int i = 0 ; i < popArgs; ++i) {
57+ m_stack.pop_back ();
58+ }
5459 }
5560
5661 const json* get_imm (const Bytecode& bc) {
@@ -169,11 +174,13 @@ class Renderer {
169174 const auto & bc = tmpl.bytecodes [i];
170175
171176 switch (bc.op ) {
172- case Bytecode::Op::Nop:
177+ case Bytecode::Op::Nop: {
173178 break ;
174- case Bytecode::Op::PrintText:
179+ }
180+ case Bytecode::Op::PrintText: {
175181 os << bc.str ;
176182 break ;
183+ }
177184 case Bytecode::Op::PrintValue: {
178185 const json& val = *get_args (bc)[0 ];
179186 if (val.is_string ())
@@ -184,9 +191,10 @@ class Renderer {
184191 pop_args (bc);
185192 break ;
186193 }
187- case Bytecode::Op::Push:
194+ case Bytecode::Op::Push: {
188195 m_stack.emplace_back (*get_imm (bc));
189196 break ;
197+ }
190198 case Bytecode::Op::Upper: {
191199 auto result = get_args (bc)[0 ]->get <std::string>();
192200 std::transform (result.begin (), result.end (), result.begin (), ::toupper);
@@ -443,9 +451,10 @@ class Renderer {
443451 m_stack.emplace_back (std::move (result));
444452 break ;
445453 }
446- case Bytecode::Op::Jump:
454+ case Bytecode::Op::Jump: {
447455 i = bc.args - 1 ; // -1 due to ++i in loop
448456 break ;
457+ }
449458 case Bytecode::Op::ConditionalJump: {
450459 if (!truthy (m_stack.back ())) {
451460 i = bc.args - 1 ; // -1 due to ++i in loop
0 commit comments