The Copy a Source String Passed by Descriptor to a Destination String routine copies a source string to a destination string. Both strings are passed by descriptor. Format STR$COPY_DX destination-string ,source-string
1 – Corresponding JSB Entry Point
STR$COPY_DX_R8
2 – Returns
OpenVMS usage:cond_value type: longword (unsigned) access: write only mechanism: by value
3 – Arguments
destination-string OpenVMS usage:char_string type: character string access: write only mechanism: by descriptor Destination string into which STR$COPY_DX writes the source string. Depending on the class of the destination string, the following actions occur: Descriptor Class Action S, Z, SD, A, Copy the source string. If needed, fill space or NCA truncate on the right. D If the area specified by the destination descriptor is large enough to contain the source string, copy the source string and set the new length in the destination descriptor. If the area specified is not large enough, return the previous space allocation (if any) and then dynamically allocate the amount of space needed. Copy the source string and set the new length and address in the destination descriptor. VS Copy the source string to the destination string up to the limit of the descriptor's MAXSTRLEN field with no padding. Adjust the string's current length (CURLEN) field to the actual number of bytes copied. The destination-string argument is the address of a descriptor pointing to the destination string. source-string OpenVMS usage:char_string type: character string access: read only mechanism: by descriptor Source string that STR$COPY_DX copies into the destination string; the descriptor class of the source string can be unspecified, fixed length, dynamic length, scalar decimal, array, noncontiguous array, or varying length. The source-string argument is the address of a descriptor pointing to this source string. (See the description of LIB$ANALYZE_SDESC for possible restrictions.)