The functions in this group return boolean values indicating whether an RSL syntax tree is of a particular type. More...
The functions in this group return boolean values indicating whether an RSL syntax tree is of a particular type.
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:
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.
ast | Pointer to an RSL parse tree structure. |
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" )
ast | Pointer to an RSL parse tree structure. |
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"
ast | Pointer to an RSL parse tree structure. |
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"
ast | Pointer to an RSL parse tree structure. |
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 case-insensitive.
ast | Pointer to an RSL parse tree structure. |
attribute | Name of the attribute to test |
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" )
ast | Pointer to an RSL parse tree structure. |
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" )
ast | Pointer to an RSL parse tree structure. |
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" ) )
ast | Pointer to an RSL parse tree structure. |
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"
ast | Pointer to an RSL value structure. |
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"
ast | Pointer to an RSL value structure. |
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" )
ast | Pointer to an RSL value structure. |
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"
ast | Pointer to an RSL value structure. |