Provided by: libglobus-rsl-doc_9.1-4_all bug

NAME

       RSL Predicates -

   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 @a ast parameter is a relation. The
         RSL syntax supports the following relation operations:
         <dl>
           <dt>=</dt>
           <dd>Equal</dd>
           <dt>!=</dt>
           <dd>Not Equal</dd>
           <dt>&gt;</dt>
           <dd>Greater Than</dd>
           <dt>&gt;=</dt>
           <dd>Greater Than or Equal</dd>
           <dt>&lt;</dt>
           <dd>Less Than</dd>
           <dt>&lt;=</dt>
           <dd>Less Than or Equal</dd>
           <dt>&lt;=</dt>
           <dd>Less Than or Equal</dd>
         </dl>

         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 @a 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 @a 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.

       References globus_rsl_is_relation().

   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 @a 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.

       References globus_rsl_is_relation().

   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 @a ast parameter is a relation with
       the attribute name which matches the string pointed to by the
       @a 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.

       References globus_rsl_is_relation(), and globus_rsl_relation_get_attribute().

   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 @a 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.

       References globus_rsl_is_boolean().

   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 @a 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.

       References globus_rsl_is_boolean().

   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 @a 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.

       References globus_rsl_is_boolean().

   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 @a 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 @a 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 @a 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 @a 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.