Cicada ---> Online Help Docs ---> Reference

C functions for working with whole arguments


getArgTop()

syntax: (ccInt) member_top = getArgTop((arg *) theArg)

Returns the ‘top’ of the argument. This is either the array dimension (if it is an array variable), the number of list elements spanned (for a list variable), or the number of members (if it’s a composite variable).


setMemberTop()

syntax: (ccInt) err_code = setMemberTop((arg *) theArg, (ccInt) memberNumber, (ccInt) newTop, (char **) argData)

Sets the ‘top’ of one member of the argument. An array variable has one member whose top is one array dimension; a list variable has one member for each list it contains; and a composite variable typically each member has a name. If the member points to primitive data, returns a pointer to that data in argData.


setStringSize()

syntax: (ccInt) err_code = setStringSize((arg *) theArg, (ccInt) stringNumber, (ccInt) newStringSize, (char **) stringChars)


stepArg()

syntax: (arg *) sub_arg = stepArg((arg *) theArg, (ccInt) memberNumber, (ccInt *) numIndices)

Steps into a member of an argument, returning another arg-type pointer. If numIndices is non-null, its referent is multiplied by the top of that member. Typically one would set numIndices to args.indices[n] and then update this variable with each stepArg() call.


argData()

syntax: (void *) arg_data = argData((arg *) theArg)

Returns a pointer to the data list of a primitive (bool/char/int/double) argument.


Prev: Predefined functions and variables    Next: Errors


Last update: November 12, 2025