globus_rsl_param(3) RSL Value Accessors

Functions


int globus_rsl_value_concatenation_set_left (globus_rsl_value_t *concatenation_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 *concatenation_node, globus_rsl_value_t *new_right_node)
Set the right-hand value of a concatenation.
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.
globus_list_t * globus_rsl_param_get_values (globus_rsl_t *ast_node, char *param)
Get the list of values for an RSL attribute.
int globus_rsl_param_get (globus_rsl_t *ast_node, int param_type, char *param, char ***values)
Get the value strings for an RSL attribute.

Detailed Description

Function Documentation

int globus_rsl_param_get (globus_rsl_t * ast_node, int param_type, char * param, char *** values)

Get the value strings for an RSL attribute. The globus_rsl_param_get() function searches the RSL parse tree pointed to by the ast_node parameter and returns an array of pointers to the strings bound to the attribute named by the param parameter.

Parameters:

ast_node A pointer to an RSL syntax tree that will be searched. This may be a relation or boolean RSL string.
param_type A flag indicating what type of values are expected for the RSL attribute named by the param parameter. This flag value may be GLOBUS_RSL_PARAM_SINGLE_LITERAL, GLOBUS_RSL_PARAM_MULTI_LITERAL, or GLOBUS_RSL_PARAM_SEQUENCE.
param A string pointing to the name of of the RSL attribute to search for.
values An output parameter pointing to an array of strings that will be allocated and contain pointers to the RSL value strings if they match the format specified by the param_type flag. The caller is responsible for freeing this array, but not the strings in the array.

Returns:

Upon success, the globus_rsl_param_get() function returns GLOBUS_SUCCESS and modifies the values parameter as described above. If an error occurs, globus_rsl_param_get() returns a non-zero value.

globus_list_t* globus_rsl_param_get_values (globus_rsl_t * ast_node, char * param)

Get the list of values for an RSL attribute. The globus_rsl_param_get_values() function searches the RSL parse tree pointed to by the ast_node parameter and returns the value list that is bound to the attribute named by the param parameter.

Parameters:

ast_node A pointer to an RSL syntax tree that will be searched. This may be a relation or boolean RSL string.
param The name of the attribute to search for in the parse tree pointed to by the ast_node parameter.

Returns:

Upon success, the globus_rsl_param_get_values() function returns a pointer to the list of values associated with the attribute named by param in the RSL parse tree pointed to by ast_node. If an error occurs, globus_rsl_param_get_values() returns NULL.

int globus_rsl_value_concatenation_set_left (globus_rsl_value_t * concatenation_node, globus_rsl_value_t * new_left_node)

Set the left-hand value of a concatenation. The globus_rsl_value_concatenation_set_left() sets the left hand side of a concatenation pointed to by concatenation_node to the value pointed to by new_left_node. If there was any previous value to the left hand side of the concatenation, it is discarded but not freed.

Parameters:

concatenation_node A pointer to the RSL value concatenation node to modify.
new_left_node A pointer to the new left hand side of the concatenation.

Returns:

Upon success, globus_rsl_value_concatenation_set_left() returns GLOBUS_SUCCESS and modifies the value pointed to by the concatenation_node parameter to use the value pointed to by the new_left_node parameter as its left hand side value. If an error occurs, globus_rsl_value_concatenation_set_left() returns -1.

int globus_rsl_value_concatenation_set_right (globus_rsl_value_t * concatenation_node, globus_rsl_value_t * new_right_node)

Set the right-hand value of a concatenation. The globus_rsl_value_concatenation_set_right() sets the right-hand side of a concatenation pointed to by concatenation_node to the value pointed to by new_right_node. If there was any previous value to the right-hand side of the concatenation, it is discarded but not freed.

Parameters:

concatenation_node A pointer to the RSL value concatenation node to modify.
new_right_node A pointer to the new right hand side of the concatenation.

Returns:

Upon success, globus_rsl_value_concatenation_set_right() returns GLOBUS_SUCCESS and modifies the value pointed to by the concatenation_node parameter to use the value pointed to by the new_right_node parameter as its right hand side value. If an error occurs, globus_rsl_value_concatenation_set_right() returns -1.

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. The globus_rsl_value_list_param_get() function copies pointers to literal string values or string pairs associated with the list of globus_rsl_value_t pointers pointed to by the ast_node_list parameter to the output array pointed to by the value parameter. It modifies the value pointed to by the value_ctr parameter to be the number of strings copied into the array.

Parameters:

ast_node_list A pointer to a list of globus_rsl_value_t pointers whose values will be copied to the value parameter array.
required_type A flag indicating whether the list is expected to contain literal strings or string pairs. This value may be one of GLOBUS_RSL_VALUE_LITERAL or GLOBUS_RSL_VALUE_SEQUENCE.
value An output parameter pointing to an array of strings. This array must be at least as large as the number of elements in the list pointed to by ast_node_list.
value_ctr An output parameter pointing to an integer that will be incremented for each string copied into the value array.

Returns:

Upon success, the globus_rsl_value_list_param_get() function returns GLOBUS_SUCCESS and modifies the values pointed to by the value and value_ctr prameters as described above. If an error occurs, globus_rsl_value_list_param_get() returns a non-zero value.

Author

Generated automatically by Doxygen for globus_rsl from the source code.