RSL Constructors

Functions

globus_rsl_t * globus_rsl_make_boolean (int operator, globus_list_t *children)
globus_rsl_t * globus_rsl_make_relation (int operator, char *attributename, globus_rsl_value_t *value_sequence)
globus_rsl_value_t * globus_rsl_value_make_literal (char *string)
globus_rsl_value_t * globus_rsl_value_make_sequence (globus_list_t *value_list)
globus_rsl_value_t * globus_rsl_value_make_variable (globus_rsl_value_t *sequence)
globus_rsl_value_t * globus_rsl_value_make_concatenation (globus_rsl_value_t *left_value, globus_rsl_value_t *right_value)

Detailed Description


Function Documentation

globus_rsl_t* globus_rsl_make_boolean ( int  operator,
globus_list_t *  children 
)

RSL boolean constructor.

The globus_rsl_make_boolean() function creates a boolean composition
of the RSL nodes in the list pointed to by @a children. The new
RSL node which is returned contains a reference to the list, not a copy.
Parameters:
operatorThe boolean RSL operator to use to join the RSL parse tree list pointed to by the children parameter. This value must be one of GLOBUS_RSL_AND, GLOBUS_RSL_OR, GLOBUS_RSL_MULTIREQ in order to create a valid RSL tree.
childrenPointer to a list of RSL syntax trees to combine with the boolean operation described by the operator parameter.
Returns:
The globus_rsl_make_boolean() function returns a new RSL parse tree node that contains a shallow reference to the list of values pointed to by the children parameter joined by the operator value in the operator parameter. If an error occurs, globus_rsl_make_boolean() returns NULL.
globus_rsl_t* globus_rsl_make_relation ( int  operator,
char *  attributename,
globus_rsl_value_t *  value_sequence 
)

RSL relation constructor.

The globus_rsl_make_relation() function creates a relation between
the attribute named by the @a attributename parameter and the values
pointed to by the @a value_sequence list. The new RSL relation
node which is returned contains a reference to the @a attributename 
and @a value_sequence parameters, not a copy.
Parameters:
operatorThe RSL operator to use to relate the RSL attribute name pointed to by the attributename parameter and the values pointed to by the value_sequence parameter. This value must be one of GLOBUS_RSL_EQ, GLOBUS_RSL_NEQ, GLOBUS_RSL_GT, GLOBUS_RSL_GTEQ, GLOBUS_RSL_LT, or GLOBUS_RSL_LTEQ in order to create a valid RSL node.
attributenamePointer to a string naming the attribute of the new RSL relation.
value_sequencePointer to a sequence of RSL values to use in the new RSL relation.
Returns:
The globus_rsl_make_relation() function returns a new RSL parse tree node that contains a shallow reference to the attribute name pointed to by the attributename parameter and the RSL value sequence pointed to by the value_sequence parameter. If an error occurs, globus_rsl_make_relation() returns NULL.
globus_rsl_value_t* globus_rsl_value_make_literal ( char *  string)

RSL literal constructor.

The globus_rsl_value_make_literal() function creates a string literal
RSL value node containing the value pointed to by the @a string
parameter.  The new RSL value
node which is returned contains a reference to the @a string
parameter, not a copy.
Parameters:
stringThe literal string to be used in the new value.
Returns:
The globus_rsl_value_make_literal() function returns a new RSL value node that contains a shallow reference to the string pointed to by the string parameter. If an error occurs, globus_rsl_value_make_literal() returns NULL.
globus_rsl_value_t* globus_rsl_value_make_sequence ( globus_list_t *  value_list)

RSL value sequence constructor.

The globus_rsl_value_make_sequence() function creates a value
sequence RSL node referring to the values pointed to by the
@a value_list parameter.  The new node returned by this function
contains a reference to the @a value_list parameter, not a copy.
Parameters:
value_listA pointer to a list of globus_rsl_value_t pointers.
Returns:
The globus_rsl_value_make_sequence() function returns a new RSL value node that contains a shallow reference to the list pointed to by the value_list parameter. If an error occurs, globus_rsl_value_make_sequence() returns NULL.
globus_rsl_value_t* globus_rsl_value_make_variable ( globus_rsl_value_t *  sequence)

RSL variable reference constructor.

The globus_rsl_value_make_variable() function creates a variable
reference RSL node referring to the variable name contained in the
value pointed to by @a sequence parameter.  The new node returned by
this function contains a reference to the @a sequence parameter, not a
copy.
Parameters:
sequenceA pointer to a RSL value sequnce.
Returns:
The globus_rsl_value_make_variable() function returns a new RSL value node that contains a shallow reference to the value sequence pointed to by the sequence parameter. If an error occurs, globus_rsl_value_make_variable() returns NULL.
globus_rsl_value_t* globus_rsl_value_make_concatenation ( globus_rsl_value_t *  left_value,
globus_rsl_value_t *  right_value 
)

RSL concatenation constructor.

The globus_rsl_value_make_concatenation() function creates a
concatenation of the values pointed to by the @a left_value and 
@a right_value parameters. The new node returned by
this function contains a reference to these parameters' values, not a
copy.
Parameters:
left_valueA pointer to a RSL value to act as the left side of the concatenation. This must be a string literal or variable reference.
right_valueA pointer to a RSL value to act as the right side of the concatenation. This must be a string literal or variable reference.
Returns:
The globus_rsl_value_make_concatenation() function returns a new RSL value node that contains a shallow reference to the values pointed to by the left_value and right_value parameters. If an error occurs, globus_rsl_value_make_concatenation() returns NULL.

about globus | globus toolkit | dev.globus

Comments? webmaster@globus.org