visitStringInterpolationExpr method

  1. @override
String visitStringInterpolationExpr(
  1. ASTStringInterpolation expr
)
override

Implementation

@override
String visitStringInterpolationExpr(ASTStringInterpolation expr) {
  final interpolation = <String>[];
  for (final node in expr.interpolations) {
    final nodeString = formatAST(node);
    interpolation.add(nodeString);
  }
  var output = expr.text;
  for (var i = 0; i < interpolation.length; ++i) {
    output = output.replaceAll(
        '${_lexicon.codeBlockStart}$i${_lexicon.codeBlockEnd}',
        '${_lexicon.stringInterpolationStart}${interpolation[i]}${_lexicon.stringInterpolationEnd}');
  }
  return "'$output'";
}