Prettyprint to a string

From Verific Design Automation FAQ
Jump to: navigation, search

Q: How do I prettyprint a parsetree node to a string?

Simple APIs:

   char * VeriTreeNode::GetPrettyPrintedString()
   char * VhdlTreeNode::GetPrettyPrintedString()

To avoid memory leak, please free the returned string when done.

This example code is included here for historical reason:

       VeriExpression *init_value = param_id -> GetInitialValue();
       if (init_value) {
           ostringstream os;
           init_value->PrettyPrint(os, 0);
           char *to_string = Strings::save(os.str().c_str()) ;
           cout << "*** initial value: " << to_string << " ***\n";