The -print option causes functions to be generated that print the contents of variables of generated types to the standard output device. In this case, a function named Print is generated in the Marshal.go file with the following signature:
func Print(val interface{})
The val argument holds a value of the type to be printed. Note that the Print function only prints types determined to be Protocol Data Unit (PDU) types. By default, a PDU type in a schema is a type not found to be referenced by any other type. This behavior can be overridden by using the -pdu command-line option to explicitly select types as PDU types.