Poster of Linux kernelThe best gift for a Linux geek
RSL Predicates

RSL Predicates

Section: globus rsl (3) Updated: 7 Jun 2010
Local index Up
 

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 '+' (multi-request). 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 case-insensitive.

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.


 

Index

NAME
Functions
Detailed Description
Function Documentation
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)
Author

This document was created by man2html, using the manual pages.
Time: 21:47:03 GMT, April 16, 2011