Copyright (C) 2000-2012 |
GNU Info (libIDL.info)FunctionsFunctions ********* * Function: int IDL_parse_filename (const char *NAME, const char *CPP_ARGS, IDL_msg_callback CALLBACK, IDL_tree *TREE, IDL_ns *NS, unsigned long FLAGS, int MAX_MESSAGE_LEVEL) Parse an file containing an IDL definition into a parse tree. Returns IDL_SUCCESS if successful, or IDL_ERROR if there was a parse error. If -1 is returned, errno will be set accordingly. Usually, if IDL_ERROR is returned, all one needs to do is exit with a non-zero status, since libIDL will probably have made the reason for failure explictly known. - NAME: required, specifies the filename to be parsed. - CPP_ARGS: optional, if non-NULL, specifies extra arguments to pass to the C preprocessor. The most common type of string would be in the form of -I<dir> to include additional directories for file inclusion search, or defines in the form of -D<define>=<value>. - CALLBACK: optional, if non-NULL, this function will be called when a warning or error is generated (Note: Data Types). If not given, warnings and errors will be sent to stderr. All errors and warning, including callbacks, are subject to MAX_MESSAGE_LEVEL as described below. - TREE: optional, if non-NULL, points to an IDL_tree * to return the generated tree which must be freed with IDL_tree_free. If NULL, the tree is freed and not returned. - NS: optional, if non-NULL, points to an IDL_ns * to return the namespace tree which must be freed with IDL_ns_free. If NULL, the tree is freed and not returned. If TREE is NULL, then NS must also be NULL, since the namespace is created as the AST is generated. - FLAGS: optional, specifies extra flags for parsing or 0. The various flags are described here. - General Parse Flags - IDLF_NO_EVAL_CONST: instructs the parser not to evaluate constant expressions. - IDLF_COMBINE_REOPENED_MODULES: instructs the parser to combine modules defined later in the IDL code in the first module node in the tree. - IDLF_PREFIX_FILENAME: instructs the parser to prefix the filename to the namespace. - IDLF_IGNORE_FORWARDS: instructs the parser to not try to resolve and print messages for unresovled forward declarations. - IDLF_PEDANTIC: instructs the parser to display stricter errors and warnings. - IDLF_INHIBIT_TAG_ONLY: only tag inhibited nodes, do not remove them. Use IDL_tree_remove_inhibits to remove them at a later time. - IDLF_INHIBIT_INCLUDES: causes libIDL to automatically inhibit IDL trees in included files. - Syntax Extension Flags - IDLF_TYPECODES: understand the `TypeCode' keyword extension. - IDLF_XPIDL: enable XPIDL syntax. - IDLF_PROPERTIES: enable support for node properties. - IDLF_CODEFRAGS: enable support for embedded code fragments. - MAX_MESSAGE_LEVEL: This specifies the maximum message level to display. Possible values are -1 for no messages, IDL_ERROR for errors only, or IDL_WARNING1, IDL_WARNING2 and IDL_WARNING3. A typical value is IDL_WARNING1, which will limit verbosity. IDL_WARNINGMAX is defined as the value in which all messages will be displayed. * Function: void IDL_tree_walk_in_order (IDL_tree ROOT, IDL_tree_func FUNC, gpointer DATA) Walks an IDL_tree, calling FUNC for every node. If the FUNC returns TRUE for a particular node, that particular node will also be traversed, if FALSE is returned, that particular node will be skipped, in the assumption that the function has taken care of it. - ROOT: required, specifies the IDL_tree to traverse. - FUNC: required, specifies the callback function (Note: Data Types). - DATA: optional, specifies the callback data. * Function: void IDL_tree_free (IDL_tree TREE) Frees the memory associated with TREE. * Function: void IDL_ns_free (IDL_ns NS) Frees the memory associated with NS. automatically generated by info2www version 1.2.2.9 |