Scroll to navigation

globus_rsl_constructors(3) globus_rsl globus_rsl_constructors(3)

NAME

globus_rsl_constructors - RSL Constructors


- RSL Constructors.

SYNOPSIS

Functions


globus_rsl_t * globus_rsl_make_boolean (int operator, globus_list_t *children)
RSL boolean constructor. globus_rsl_t * globus_rsl_make_relation (int 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.

Detailed Description

RSL Constructors.

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 children. The new RSL node which is returned contains a reference to the list, not a copy.

Parameters

operator The 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.
children Pointer 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 attributename parameter and the values pointed to by the value_sequence list. The new RSL relation node which is returned contains a reference to the attributename and value_sequence parameters, not a copy.

Parameters

operator The 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.
attributename Pointer to a string naming the attribute of the new RSL relation.
value_sequence Pointer 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_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 left_value and right_value parameters. The new node returned by this function contains a reference to these parameters' values, not a copy.

Parameters

left_value A pointer to a RSL value to act as the left side of the concatenation. This must be a string literal or variable reference.
right_value A 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.

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 string parameter. The new RSL value node which is returned contains a reference to the string parameter, not a copy.

Parameters

string The 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 value_list parameter. The new node returned by this function contains a reference to the value_list parameter, not a copy.

Parameters

value_list A 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 sequence parameter. The new node returned by this function contains a reference to the sequence parameter, not a copy.

Parameters

sequence A 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.

Author

Generated automatically by Doxygen for globus_rsl from the source code.

Tue Jul 5 2022 Version 11.3