RSL Predicates(3)

NAME

RSL Predicates

The functions in this group return boolean values indicating whether an RSL syntax tree is of a particular type.
Functions
int globus_rsl_is_relation (globus_rsl_t *ast) int globus_rsl_is_boolean (globus_rsl_t *ast) int globus_rsl_is_relation_eq (globus_rsl_t *ast) int globus_rsl_is_relation_lessthan (globus_rsl_t *ast) int globus_rsl_is_relation_attribute_equal (globus_rsl_t *ast, char
*attribute)
int globus_rsl_is_boolean_and (globus_rsl_t *ast) int globus_rsl_is_boolean_or (globus_rsl_t *ast) int globus_rsl_is_boolean_multi (globus_rsl_t *ast) int globus_rsl_value_is_literal (globus_rsl_value_t *ast) int globus_rsl_value_is_sequence (globus_rsl_value_t *ast) int globus_rsl_value_is_variable (globus_rsl_value_t *ast) int globus_rsl_value_is_concatenation (globus_rsl_value_t *ast)

Detailed Description

The functions in this group return boolean values indicating whether an RSL syntax tree is of a particular type.

Function Documentation

int globus_rsl_is_relation (globus_rsl_t * ast)
RSL relation test. The globus_rsl_is_relation() function tests whether the the RSL pointed to by the ast parameter is a relation. The RSL syntax supports the following relation operations:
= Equal
!= Not Equal
> Greater Than
>= Greater Than or Equal
< Less Than
<= Less Than or Equal
<= Less Than or Equal
Some examples of RSL relations are

'queue' = 'debug'
'queue' != 'slow'
'min_memory' > '1000'
'max_wall_time' >= '60'
'count < '10'
'host_count' <= '5'
GRAM only supports equality relations.
Parameters:
ast Pointer to an RSL parse tree structure.
Returns:
The globus_rsl_is_relation() function returns GLOBUS_TRUE if the RSL parse tree pointed to by ast is a relation; otherwise, it returns GLOBUS_FALSE.
int globus_rsl_is_boolean (globus_rsl_t * ast)
RSL boolean test. The globus_rsl_is_boolean() function tests whether the the RSL pointed to by the ast parameter is a boolean composition of other RSL parse trees. The syntactically understood boolean compositions are '&' (conjunction), '|' (disjunction), and '+' (multirequest). Some bexamples of RSL booleans are

& ( 'queue' = 'debug') ( 'max_time' = '10000')
| ('count' = '1')('count' = '10')
+ ( &('executable' = '1.exe') ) ( & ('executable' = '2.exe' )
Parameters:
ast Pointer to an RSL parse tree structure.
Returns:
The globus_rsl_is_boolean() function returns GLOBUS_TRUE if the RSL parse tree pointed to by ast is a boolean composition; otherwise, it returns GLOBUS_FALSE.
int globus_rsl_is_relation_eq (globus_rsl_t * ast)
RSL equality operation test. The globus_rsl_is_relation_eq() function tests whether the the RSL pointed to by the ast parameter is an equality relation. An example of an equality relation is

'queue' = 'debug'
Parameters:
ast Pointer to an RSL parse tree structure.
Returns:
The globus_rsl_is_relation_eq() function returns GLOBUS_TRUE if the RSL parse tree pointed to by ast is an equality relation;
otherwise, it returns GLOBUS_FALSE.
int globus_rsl_is_relation_lessthan (globus_rsl_t * ast)
RSL less than operation test. The globus_rsl_is_relation_lessthan() function tests whether the the RSL pointed to by the ast parameter is a less-than relation. An example of a less-than relation is

'count' = '10'
Parameters:
ast Pointer to an RSL parse tree structure.
Returns:
The globus_rsl_is_relation_lessthan() function returns GLOBUS_TRUE if the RSL parse tree pointed to by ast is a less-than relation;
otherwise, it returns GLOBUS_FALSE.
int globus_rsl_is_relation_attribute_equal (globus_rsl_t * ast, char *
attribute)
RSL attribute name test. The globus_rsl_is_relation_attribute_equal() function tests whether the the RSL pointed to by the ast parameter is a relation with the attribute name which matches the string pointed to by the attribute parameter. This attribute name comparision is caseinsensitive.
Parameters:
ast Pointer to an RSL parse tree structure.
attribute Name of the attribute to test
Returns:
The globus_rsl_is_relation_attribute_equal() function returns GLOBUS_TRUE if the RSL parse tree pointed to by ast is a relation and its attribute name matches the attribute parameter; otherwise, it returns GLOBUS_FALSE.
int globus_rsl_is_boolean_and (globus_rsl_t * ast)
RSL boolean and test. The globus_rsl_is_boolean_and() function tests whether the the RSL pointed to by the ast parameter is a boolean 'and' composition of RSL trees. An example of a boolean and relation is

& ( 'queue' = 'debug' ) ( 'executable' = 'a.out' )
Parameters:
ast Pointer to an RSL parse tree structure.
Returns:
The globus_rsl_is_boolean_and() function returns GLOBUS_TRUE if the RSL parse tree pointed to by ast is a boolean and of RSL parse trees; otherwise, it returns GLOBUS_FALSE.
int globus_rsl_is_boolean_or (globus_rsl_t * ast)
RSL boolean or test. The globus_rsl_is_boolean_or() function tests whether the the RSL pointed to by the ast parameter is a boolean 'or' composition of RSL trees. An example of a boolean or relation is

| ( 'count' = '2' ) ( 'count' = '4' )
Parameters:
ast Pointer to an RSL parse tree structure.
Returns:
The globus_rsl_is_boolean_or() function returns GLOBUS_TRUE if the RSL parse tree pointed to by ast is a boolean and of RSL parse trees; otherwise, it returns GLOBUS_FALSE.
int globus_rsl_is_boolean_multi (globus_rsl_t * ast)
RSL boolean multi test. The globus_rsl_is_boolean_multi() function tests whether the the RSL pointed to by the ast parameter is a boolean 'multi-request' composition of RSL trees. An example of a boolean multie-request relation is

+ ( &( 'executable' = 'exe.1') ( 'count' = '2' ) )
( &( 'executable' =' exe.2') ( 'count' = '2' ) )
Parameters:
ast Pointer to an RSL parse tree structure.
Returns:
The globus_rsl_is_boolean_multi() function returns GLOBUS_TRUE if the RSL parse tree pointed to by ast is a boolean multi-request of RSL parse trees; otherwise, it returns GLOBUS_FALSE.
int globus_rsl_value_is_literal (globus_rsl_value_t * ast)
RSL literal string test. The globus_rsl_value_is_literal() function tests whether the the RSL value pointed to by the ast parameter is a literal string value. An example of a literal string is

'count'
Parameters:
ast Pointer to an RSL value structure.
Returns:
The globus_rsl_value_is_literal() function returns GLOBUS_TRUE if the RSL value pointed to by ast is a literal string value;
otherwise, it returns GLOBUS_FALSE.
int globus_rsl_value_is_sequence (globus_rsl_value_t * ast)
RSL value sequence test. The globus_rsl_value_is_sequence() function tests whether the the RSL value pointed to by the ast parameter is a sequence of RSL values. An example of a sequence of values is

'1' '2' '3'
Parameters:
ast Pointer to an RSL value structure.
Returns:
The globus_rsl_value_is_sequence() function returns GLOBUS_TRUE if the RSL value pointed to by ast is a value sequnce; otherwise, it returns GLOBUS_FALSE.
int globus_rsl_value_is_variable (globus_rsl_value_t * ast)
RSL value variable test. The globus_rsl_value_is_variable() function tests whether the the RSL value pointed to by the ast parameter is a variable reference. RSL values. An example of a variable reference is

$( 'GLOBUSRUN_GASS_URL' )
Parameters:
ast Pointer to an RSL value structure.
Returns:
The globus_rsl_value_is_sequence() function returns GLOBUS_TRUE if the RSL value pointed to by ast is a value sequnce; otherwise, it returns GLOBUS_FALSE.
int globus_rsl_value_is_concatenation (globus_rsl_value_t * ast)
RSL value concatenation test. The globus_rsl_value_is_concatenation() function tests whether the the RSL value pointed to by the ast parameter is a concatenation of RSL values. An example of an RSL value concatenation is

$( 'GLOBUSRUN_GASS_URL' ) # '/input'
Parameters:
ast Pointer to an RSL value structure.
Returns:
The globus_rsl_value_is_concatenation() function returns GLOBUS_TRUE if the RSL value pointed to by ast is a value concatenation; otherwise, it returns GLOBUS_FALSE.

Author

Generated automatically by Doxygen for globus rsl from the source code.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Home | Man pages | tLDP | Documents | Utilities | About
Design by styleshout