Loading...
Searching...
No Matches
RSL Value Accessors
Globus RSL

RSL Value Accessors. More...

## 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

RSL Value Accessors.

## Function Documentation

## globus_rsl_param_get()

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_rsl_param_get_values()

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.

## globus_rsl_value_concatenation_set_left()

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.

## globus_rsl_value_concatenation_set_right()

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.

## globus_rsl_value_list_param_get()

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.