code: def fill_placeholders(self, tags):
          
          def change_p_node_tags(node, children):
              if isinstance(node, Placeholder):
                  value = ConstExpr(tags[node.name])
                  return value
              else:
                  return node.clone(children)
  
          return map_tree(change_p_node_tags, self)
docs: Substitute Placeholder nodes by its value in tags