globus_rsl.h(3) | globus_rsl | globus_rsl.h(3) |
globus_rsl.h - Globus RSL Parsing.
#include 'globus_module.h'
#include 'globus_list.h'
#include 'globus_symboltable.h'
#include 'globus_hashtable.h'
int globus_rsl_is_relation (globus_rsl_t *ast)
RSL relation test. int globus_rsl_is_boolean (globus_rsl_t *ast)
RSL boolean test. int globus_rsl_is_relation_eq (globus_rsl_t *ast)
RSL equality operation test. int globus_rsl_is_relation_lessthan
(globus_rsl_t *ast)
RSL less than operation test. int
globus_rsl_is_relation_attribute_equal (globus_rsl_t *ast, char
*attribute)
RSL attribute name test. int globus_rsl_is_boolean_and (globus_rsl_t
*ast)
RSL boolean and test. int globus_rsl_is_boolean_or (globus_rsl_t *ast)
RSL boolean or test. int globus_rsl_is_boolean_multi (globus_rsl_t
*ast)
RSL boolean multi test. int globus_rsl_value_is_literal
(globus_rsl_value_t *ast)
RSL literal string test. int globus_rsl_value_is_sequence
(globus_rsl_value_t *ast)
RSL value sequence test. int globus_rsl_value_is_variable
(globus_rsl_value_t *ast)
RSL value variable test. int globus_rsl_value_is_concatenation
(globus_rsl_value_t *ast)
RSL value concatenation test. globus_rsl_t * globus_rsl_make_boolean
(int my_operator, globus_list_t *children)
RSL boolean constructor. globus_rsl_t * globus_rsl_make_relation (int
my_operator, char *attributename, globus_rsl_value_t *value_sequence)
RSL relation constructor. globus_rsl_value_t *
globus_rsl_value_make_literal (char *string)
RSL literal constructor. globus_rsl_value_t *
globus_rsl_value_make_sequence (globus_list_t *value_list)
RSL value sequence constructor. globus_rsl_value_t *
globus_rsl_value_make_variable (globus_rsl_value_t *sequence)
RSL variable reference constructor. globus_rsl_value_t *
globus_rsl_value_make_concatenation (globus_rsl_value_t *left_value,
globus_rsl_value_t *right_value)
RSL concatenation constructor. globus_rsl_t * globus_rsl_copy_recursive
(globus_rsl_t *globus_rsl_ptr)
Create a deep copy of an RSL syntax tree. globus_rsl_value_t *
globus_rsl_value_copy_recursive (globus_rsl_value_t
*globus_rsl_value_ptr)
Create a deep copy of an RSL value. int globus_rsl_boolean_get_operator
(globus_rsl_t *ast_node)
Get the RSL operator used in a boolean RSL composition. globus_list_t *
globus_rsl_boolean_get_operand_list (globus_rsl_t *ast_node)
Get the RSL operand list from a boolean RSL composition. globus_list_t **
globus_rsl_boolean_get_operand_list_ref (globus_rsl_t *boolean_node)
Get a reference to the RSL operand list from a boolean RSL composition. char *
globus_rsl_relation_get_attribute (globus_rsl_t *ast_node)
Get an RSL relation attribute name. int
globus_rsl_relation_get_operator (globus_rsl_t *ast_node)
Get an RSL relation operator. globus_rsl_value_t *
globus_rsl_relation_get_value_sequence (globus_rsl_t *ast_node)
Get the value of an RSL relation. globus_rsl_value_t *
globus_rsl_relation_get_single_value (globus_rsl_t *ast_node)
Get the single value of an RSL relation. char *
globus_rsl_value_literal_get_string (globus_rsl_value_t
*literal_node)
Get the string value of an RSL literal. globus_list_t *
globus_rsl_value_sequence_get_value_list (globus_rsl_value_t
*sequence_node)
Get the value list from an RSL value sequence. globus_rsl_value_t *
globus_rsl_value_variable_get_sequence (globus_rsl_value_t
*variable_node)
Get the value sequence from an RSL variable reference. char *
globus_rsl_value_variable_get_name (globus_rsl_value_t
*variable_node)
Get the name of an RSL variable reference. char *
globus_rsl_value_variable_get_default (globus_rsl_value_t
*variable_node)
Get the default value of an RSL variable reference. globus_rsl_value_t *
globus_rsl_value_concatenation_get_left (globus_rsl_value_t
*concatenation_node)
Get the left side of a concatenation value. globus_rsl_value_t *
globus_rsl_value_concatenation_get_right (globus_rsl_value_t
*concatenation_node)
Get the right side of a concatenation value. globus_list_t **
globus_rsl_value_sequence_get_list_ref (globus_rsl_value_t
*sequence_node)
Get a reference to the list of values in a sequence. int
globus_rsl_value_concatenation_set_left (globus_rsl_value_t
*concatenate_node, globus_rsl_value_t *new_left_node)
Set the left-hand value of a concatenation. int
globus_rsl_value_concatenation_set_right (globus_rsl_value_t
*concatenate_node, globus_rsl_value_t *new_right_node)
Set the right-hand value of a concatenation. int globus_rsl_value_eval
(globus_rsl_value_t *ast_node, globus_symboltable_t *symbol_table, char
**string_value, int rsl_substitute_flag)
Evaluate RSL substitions in an RSL value node. int globus_rsl_eval
(globus_rsl_t *ast_node, globus_symboltable_t *symbol_table)
Evaluate an RSL syntax tree. int globus_rsl_value_free
(globus_rsl_value_t *val)
Free an RSL value node. int globus_rsl_free (globus_rsl_t *ast_node)
Free an RSL syntax tree node. int globus_rsl_value_free_recursive
(globus_rsl_value_t *globus_rsl_value_ptr)
Free an RSL value and all its child nodes. int
globus_rsl_free_recursive (globus_rsl_t *ast_node)
Free an RSL syntax tree and all its child nodes. int
globus_rsl_value_print_recursive (globus_rsl_value_t
*globus_rsl_value_ptr)
Print the value of a globus_rsl_value_t to standard output. int
globus_rsl_print_recursive (globus_rsl_t *ast_node)
Print the value of an RSL syntax tree to standard output. int
globus_rsl_value_variable_get_size (globus_rsl_value_t
*variable_node)
Get the size of the value list within an RSL variable reference node.
globus_list_t * globus_list_copy_reverse (globus_list_t *orig)
Create a reverse-order copy of a list. int
globus_rsl_value_list_literal_replace (globus_list_t *value_list,
char *string_value)
Replace the first value in a value list with a literal. int
globus_rsl_value_list_param_get (globus_list_t *ast_node_list, int
required_type, char ***value, int *value_ctr)
Get the values of an RSL value list. int globus_rsl_param_get
(globus_rsl_t *ast_node, int required_type, char *param, char ***values)
Get the value strings for an RSL attribute. globus_list_t *
globus_rsl_param_get_values (globus_rsl_t *ast_node, char *param)
Get the list of values for an RSL attribute. globus_rsl_t *
globus_rsl_parse (char *rsl_spec)
Parse an RSL string. char * globus_rsl_unparse (globus_rsl_t *rsl_spec)
Convert an RSL parse tree to a string. char * globus_rsl_value_unparse
(globus_rsl_value_t *rsl_value)
Convert an RSL value pointer to a string.
Globus RSL Parsing.
Parse an RSL string. The globus_rsl_parse() function parses the string pointed to by the buf parameter into an RSL syntax tree. The caller is responsible for freeing that tree by calling globus_rsl_free_recursive().
Parameters
Returns
Generated automatically by Doxygen for globus_rsl from the source code.
Tue Jul 5 2022 | Version 11.3 |