CodeTools::AST << {

StringCompose < Node {
  node_type string_compose
  field body

  bytecode: |g| {
    pos(g)

    self.body.each_slice(2) |string, other| {
      g.push_literal(string.value.to_s)
      other && (other.bytecode(g); g.meta_to_s)
    }

    g.string_build(self.body.size)
  }
}

}