table of contents
globus_rsl_predicates(3) | globus_rsl | globus_rsl_predicates(3) |
NAME¶
globus_rsl_predicates - RSL Predicates
- RSL Predicates.
SYNOPSIS¶
Functions¶
int globus_rsl_is_relation (globus_rsl_t *ast)
RSL relation test. int globus_rsl_is_boolean (globus_rsl_t *ast)
RSL boolean test. int globus_rsl_is_relation_eq (globus_rsl_t *ast)
RSL equality operation test. int globus_rsl_is_relation_lessthan
(globus_rsl_t *ast)
RSL less than operation test. int
globus_rsl_is_relation_attribute_equal (globus_rsl_t *ast, char
*attribute)
RSL attribute name test. int globus_rsl_is_boolean_and (globus_rsl_t
*ast)
RSL boolean and test. int globus_rsl_is_boolean_or (globus_rsl_t *ast)
RSL boolean or test. int globus_rsl_is_boolean_multi (globus_rsl_t
*ast)
RSL boolean multi test. int globus_rsl_value_is_literal
(globus_rsl_value_t *ast)
RSL literal string test. int globus_rsl_value_is_sequence
(globus_rsl_value_t *ast)
RSL value sequence test. int globus_rsl_value_is_variable
(globus_rsl_value_t *ast)
RSL value variable test. int globus_rsl_value_is_concatenation
(globus_rsl_value_t *ast)
RSL value concatenation test.
Detailed Description¶
RSL Predicates.
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_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 '+' (multi-request). Some bexamples of RSL booleans are
& ( "queue" = "debug") ( "max_time" = "10000") | ("count" = "1")("count" = "10") + ( &("executable" = "1.exe") ) ( & ("executable" = "2.exe" )
Parameters
Returns
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
Returns
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
Returns
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
Returns
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"
Note
Parameters
Returns
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 comparison is case-insensitive.
Parameters
attribute Name of the attribute to test
Returns
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
Returns
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
Returns
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
Returns
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
Returns
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
Returns
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
Returns
Author¶
Generated automatically by Doxygen for globus_rsl from the source code.
Tue Jul 5 2022 | Version 11.3 |