3GL Program Rules and Guidelines

The following rules and guidelines should be observed when coding User Defined Built-In Functions:

s is the prefix for X_SHORT

l is the prefix for X_LONG

d is the prefix for X_DOUBLE

c is the prefix for X_CHAR

vch is the prefix for X_VCHAR

p is the prefix for a pointer

a is the prefix for an array

 

Prefixes can accumulate, so "apsOperation" indicates that nominal variable "Operation" is an array of pointers to X_SHORTs.

Similarly pvchName indicates that this is a pointer to an X_VCHAR variable that contains a "Name".

 

struct X_IDS *pX_Ids,

 

struct X_PRO *pX_Pro,

 

struct X_FUN *pX_Fun,

 

struct X_BIF *pX_Bif,

 

struct X_FLD X_Fld[],

 

struct X_LIST X_List[],

 

X_SHORT sInCount,

 

X_SHORT sInVec[],

 

X_SHORT sRetCount,

 

X_SHORT sRetVec[]

 

 

Modification of storage pointed to by any of these arguments, other than by U_BIF macros, may result in unpredictable results and application failure. Do not modify storage outside the direct scope of your function other than by using the U_BIF macros. Failure to observe this rule may lead to loss of integrity in your application and future compatibility problems.