visitBlockStmt method

  1. @override
String visitBlockStmt(
  1. BlockStmt block
)
override

Implementation

@override
String visitBlockStmt(BlockStmt block) {
  final output = StringBuffer();
  if (block.statements.isNotEmpty) {
    output.writeln(' ${_lexicon.codeBlockStart}');
    ++_curIndentCount;
    for (final stmt in block.statements) {
      final stmtString = formatAST(stmt);
      if (stmtString.isNotEmpty) {
        output.write(curIndent);
        output.writeln(stmtString);
      }
    }
    --_curIndentCount;
    output.write(curIndent);
    output.write(_lexicon.codeBlockEnd);
  } else {
    output.write(' ${_lexicon.codeBlockStart}${_lexicon.codeBlockEnd}');
  }
  return output.toString();
}