globus_rsl_accessor(3)
π NAME π
okay so this is globus_rsl_accessor(3) from the Library Functions Manual β and it's literally all about RSL Accessor Functions π
globus_rsl_accessor β RSL Accessor Functions.
Also, just so we're clear, the description is: RSL Accessor Functions. That's the whole vibe. β¨
β¨ SYNOPSIS β¨
πΈ Functions πΈ
int globus_rsl_boolean_get_operator (globus_rsl_t *ast_node)β get the RSL operator used in a boolean RSL composition, bestie π₯globus_list_t * globus_rsl_boolean_get_operand_list (globus_rsl_t *ast_node)β get the RSL operand list from a boolean RSL composition πglobus_list_t ** globus_rsl_boolean_get_operand_list_ref (globus_rsl_t *boolean_node)β get a reference to the RSL operand list from a boolean RSL composition πchar * globus_rsl_relation_get_attribute (globus_rsl_t *ast_node)β get an RSL relation attribute name πΈint globus_rsl_relation_get_operator (globus_rsl_t *ast_node)β get an RSL relation operator β¨globus_rsl_value_t * globus_rsl_relation_get_value_sequence (globus_rsl_t *ast_node)β get the value of an RSL relation π«globus_rsl_value_t * globus_rsl_relation_get_single_value (globus_rsl_t *ast_node)β get the single value of an RSL relation π¦char * globus_rsl_value_literal_get_string (globus_rsl_value_t *literal_node)β get the string value of an RSL literal πglobus_list_t * globus_rsl_value_sequence_get_value_list (globus_rsl_value_t *sequence_node)β get the value list from an RSL value sequence βglobus_rsl_value_t * globus_rsl_value_variable_get_sequence (globus_rsl_value_t *variable_node)β get the value sequence from an RSL variable reference πchar * globus_rsl_value_variable_get_name (globus_rsl_value_t *variable_node)β get the name of an RSL variable reference πchar * globus_rsl_value_variable_get_default (globus_rsl_value_t *variable_node)β get the default value of an RSL variable reference π«Άint globus_rsl_value_variable_get_size (globus_rsl_value_t *variable_node)β get the size of the value list within an RSL variable reference node πglobus_rsl_value_t * globus_rsl_value_concatenation_get_left (globus_rsl_value_t *concatenation_node)β get the left side of a concatenation value πglobus_rsl_value_t * globus_rsl_value_concatenation_get_right (globus_rsl_value_t *concatenation_node)β get the right side of a concatenation value πglobus_list_t ** globus_rsl_value_sequence_get_list_ref (globus_rsl_value_t *sequence_node)β get a reference to the list of values in a sequence π
π¦ Detailed Description π¦
RSL Accessor Functions.
That's the whole description, no cap. It's giving "these are the accessor functions for RSL" and honestly? Iconic. π
part 2 coming next, no cap π«Ά
β¨ Function Documentation β¨
πΈ globus_list_t * globus_rsl_boolean_get_operand_list (globus_rsl_t * ast_node)
Okay bestie, this one grabs the RSL operand list out of a boolean RSL composition. Like, it hands you back the list of RSL syntax tree nodes that are joined together by a boolean composition. it's giving "here are all the lil pieces that got AND-ed or OR-ed together" π
Parameters
ast_nodeβ the RSL syntax tree you wanna peek at π
Returns
When it works, globus_rsl_boolean_get_operand_list() hands back a pointer to a list of RSL syntax tree nodes that are the operands of a boolean composition operation. If something goes sideways, globus_rsl_boolean_get_operand_list() returns NULL. no cap π«Ά
πΈ globus_list_t ** globus_rsl_boolean_get_operand_list_ref (globus_rsl_t * boolean_node)
This is the ref version, and the way that it's different is lowkey iconic: it gives you a pointer to the list of RSL syntax tree nodes joined by a boolean composition β but it's a reference, so if you go and modify that list, then the value of the boolean syntax tree gets modified too. main character energy, editing in place π
Parameters
boolean_nodeβ the RSL syntax tree you're inspecting
Returns
Upon success, globus_rsl_boolean_get_operand_list_ref() returns a pointer to the list pointer inside the RSL syntax tree data structure. You can modify this list to change the operands of the boolean operation. If an error occurs, globus_rsl_boolean_get_operand_list_ref() returns NULL.
πΈ int globus_rsl_boolean_get_operator (globus_rsl_t * ast_node)
Get the RSL operator used in a boolean RSL composition. globus_rsl_boolean_get_operator() returns whichever operator the boolean RSL composition is using β like, which flavor of boolean logic we're dealing with π₯
Parameters
ast_nodeβ the RSL syntax tree to inspect
Returns
Upon success, globus_rsl_boolean_get_operator() returns one of GLOBUS_RSL_AND, GLOBUS_RSL_OR, GLOBUS_RSL_MULTIREQ. If an error occurs, globus_rsl_boolean_get_operator() returns -1. π
πΈ char * globus_rsl_relation_get_attribute (globus_rsl_t * ast_node)
Grab an RSL relation attribute name. globus_rsl_relation_get_attribute() returns a pointer to the name of the attribute in an RSL relation. Heads up bestie β this return value is a shallow reference to the attribute name, so it's not a copy, it's just pointing at the original π
Parameters
ast_nodeβ the RSL relation node to inspect
Returns
Upon success, globus_rsl_relation_get_attribute() returns a pointer to the name of the attribute of the relation. If an error occurs, globus_rsl_relation_get_attribute() returns NULL.
πΈ int globus_rsl_relation_get_operator (globus_rsl_t * ast_node)
Get an RSL relation operator. globus_rsl_relation_get_operator() returns the operation type represented by the RSL relation node that ast_node points to. it's giving comparison o'clock β
Parameters
ast_nodeβ the RSL relation node to inspect
Returns
Upon success, globus_rsl_relation_get_operator() returns one of GLOBUS_RSL_EQ, GLOBUS_RSL_NEQ, GLOBUS_RSL_GT, GLOBUS_RSL_GTEQ, GLOBUS_RSL_LT, or GLOBUS_RSL_LTEQ. If an error occurs, globus_rsl_relation_get_operator() returns -1.
πΈ globus_rsl_value_t * globus_rsl_relation_get_single_value (globus_rsl_t * ast_node)
Get the single value of an RSL relation. globus_rsl_relation_get_single_value() returns the value of an RSL relation node that ast_node points to β but only if the value is a sequence of exactly one value. one and done, periodt π
Parameters
ast_nodeβ the RSL relation node to inspect
Returns
Upon success, globus_rsl_relation_get_single_value() returns the value pointer at the head of the RSL relation pointed to by the ast_node parameter. If the value sequence has more than one value or the ast_node points to an RSL syntax tree that is not a relation, globus_rsl_relation_get_value_sequence() returns NULL.
ngl that last bit says globus_rsl_relation_get_value_sequence() and we're keeping it exactly like that, no editing fr fr π
πΈ globus_rsl_value_t * globus_rsl_relation_get_value_sequence (globus_rsl_t * ast_node)
Get the value of an RSL relation. globus_rsl_relation_get_value_sequence() returns the value of an RSL relation node pointed to by the ast_node parameter. the whole sequence, not just one lil guy π¦
Parameters
ast_nodeβ the RSL relation node to inspect
Returns
Upon success, globus_rsl_relation_get_value_sequence() returns the value sequence pointer in the RSL relation pointed to by the ast_node parameter. If an error occurs, globus_rsl_relation_get_value_sequence() returns NULL.
πΈ globus_rsl_value_t * globus_rsl_value_concatenation_get_left (globus_rsl_value_t * concatenation_node)
Get the left side of a concatenation value. globus_rsl_value_concatenation_get_left() returns the left side of an RSL value concatenation pointed to by the concatenation_node parameter. left girlies rise up π
Parameters
concatenation_nodeβ the RSL concatenation node to inspect
Returns
Upon success, globus_rsl_value_concatenation_get_left() returns a pointer to the left value of the concatenation values pointed to by the concatenation_node parameter. If an error occurs, globus_rsl_value_concatenation_get_left() returns NULL.
πΈ globus_rsl_value_t * globus_rsl_value_concatenation_get_right (globus_rsl_value_t * concatenation_node)
Get the right side of a concatenation value. globus_rsl_value_concatenation_get_right() returns the right side of an RSL value concatenation pointed to by the concatenation_node parameter. and now the right side gets its moment π
Parameters
concatenation_nodeβ the RSL concatenation node to inspect
Returns
Upon success, globus_rsl_value_concatenation_get_right() returns a pointer to the right value of the concatenation values pointed to by the concatenation_node parameter. If an error occurs, globus_rsl_value_concatenation_get_right() returns NULL.
πΈ char * globus_rsl_value_literal_get_string (globus_rsl_value_t * literal_node)
Get the string value of an RSL literal. globus_rsl_value_literal_get_string() returns the string value of an RSL literal node pointed to by the literal_node parameter. yes, the actual string, the tea, the content π
Parameters
literal_nodeβ the RSL literal node to inspect
Returns
Upon success, globus_rsl_value_literal_get_string() returns a pointer to the string value of the literal pointed to by the literal_node parameter. If the value is not a literal, globus_rsl_value_literal_get_string() returns NULL.
πΈ globus_list_t ** globus_rsl_value_sequence_get_list_ref (globus_rsl_value_t * sequence_node)
Get a reference to the list of values in a sequence. globus_rsl_value_sequence_get_list_ref() returns a reference to the list of values in a value sequence. And bestie, pay attention: any changes to the elements of this list will affect the sequence_node parameter. it's a live wire, not a copy π₯
Parameters
sequence_nodeβ the RSL sequence node to inspect
Returns
Upon success, globus_rsl_value_sequence_get_list_ref() returns a pointer to the list of the globus_rsl_value_t pointer values contained in the sequence_node parameter. If an error occurs, globus_rsl_value_sequence_get_list_ref() returns NULL.
πΈ globus_list_t * globus_rsl_value_sequence_get_value_list (globus_rsl_value_t * sequence_node)
Get the value list from an RSL value sequence. globus_rsl_value_sequence_get_value_list() returns the list of globus_rsl_value_t pointer values associated with the RSL value sequence pointed to by the sequence_node parameter.
Parameters
sequence_nodeβ the RSL sequence node to inspect
Returns
Upon success, globus_rsl_value_sequence_get_value_list() returns a pointer to the list of values pointed to by the sequence_node parameter. If the value is not a sequence, globus_rsl_value_literal_get_string() returns NULL.
okay so yeah, the original really does name a different function here (globus_rsl_value_literal_get_string()) and we are NOT fixing it, we're preserving it exactly, iykyk π
πΈ char * globus_rsl_value_variable_get_default (globus_rsl_value_t * variable_node)
Get the default value of an RSL variable reference. globus_rsl_value_variable_get_default() returns a pointer to the default value of the RSL variable pointed to by the variable_node parameter β the value to use if the variable's name isn't bound in the current evaluation context. like a lil fallback fit for when nothing else matches π
Parameters
variable_nodeβ the RSL variable node to inspect
Returns
Upon success, globus_rsl_value_variable_get_default() returns a pointer to the string containing the default value of the variable referenced by the variable_node parameter. If the node is not a variable reference or no default value exists in the RSL node, globus_rsl_value_variable_get_default() returns NULL.
πΈ char * globus_rsl_value_variable_get_name (globus_rsl_value_t * variable_node)
Get the name of an RSL variable reference. globus_rsl_value_variable_get_name() returns a pointer to the name of the RSL variable name pointed to by the variable_node parameter. give us the name bestie π
Parameters
variable_nodeβ the RSL variable node to inspect
Returns
Upon success, globus_rsl_value_variable_get_name() returns a pointer to the string containing the name of the variable referenced by the variable_node parameter. If the node is not a variable reference, globus_rsl_value_variable_get_sequence() returns NULL.
yep, another one where the doc points at a different function name (globus_rsl_value_variable_get_sequence()) β keeping it character for character, no cap π«Ά
πΈ globus_rsl_value_t * globus_rsl_value_variable_get_sequence (globus_rsl_value_t * variable_node)
Get the value sequence from an RSL variable reference. globus_rsl_value_variable_get_sequence() returns the sequence value associated with the RSL variable reference pointed to by the variable_node parameter.
Parameters
variable_nodeβ the RSL variable node to inspect
Returns
Upon success, globus_rsl_value_variable_get_sequence() returns a pointer to the rsl value sequence pointed to by the variable_node parameter. If the value is not a variable reference, globus_rsl_value_variable_get_sequence() returns NULL.
πΈ int globus_rsl_value_variable_get_size (globus_rsl_value_t * variable_node)
Get the size of the value list within an RSL variable reference node. globus_rsl_value_variable_get_size() returns the number of nodes in the RSL variable reference node pointed to by the variable_node parameter. counting the girlies in the list π’
Parameters
variable_nodeβ the RSL variable node to inspect
Returns
Upon success, globus_rsl_value_variable_get_size() returns the list of values within a RSL variable reference, or -1 if the node pointed to by variable_node is not a variable reference. If the return value is 1, then the variable has no default value included in the reference. β
π Author π
Generated automatically by Doxygen for globus_rsl from the source code.
and that's a wrap on globus_rsl_accessor(3) bestie πβ¨ this one's from Version 11.4 of globus_rsl, and you absolutely ate reading the whole thing. go forth and inspect those syntax trees, you icon π«Άπ
π
π¦ where this page comes from
- epel 10: globus-rsl-doc 11.4-1.el10_0 Β· Apache-2.0
- fedora 43: globus-rsl-doc 11.4-4.fc43 Β· Apache-2.0
- fedora 44: globus-rsl-doc 11.4-5.fc44 Β· Apache-2.0
- ubuntu resolute: libglobus-rsl-doc 11.4-2build2 Β· Apache-2.0
- ubuntu stonking: libglobus-rsl-doc 11.4-3 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms