VMS Help  —  RTL Routines, LIB$  LIB$SCOPY_DXDX
    The Copy Source String Passed by Descriptor to Destination
    routine copies a source string passed by descriptor to a
    destination string.

    Format

      LIB$SCOPY_DXDX  source-string ,destination-string

1  –  Corresponding JSB Entry Point

      LIB$SCOPY_DXDX6

2  –  Returns

    OpenVMS usage:cond_value
    type:         longword (unsigned)
    access:       write only
    mechanism:    by value

3  –  Arguments

 source-string

    OpenVMS usage:char_string
    type:         character string
    access:       read only
    mechanism:    by descriptor

    Source string to be copied to the destination string by
    LIB$SCOPY_DXDX. The source-string argument contains the address
    of a descriptor pointing to this source string. The descriptor
    class can be unspecified, fixed-length, decimal string, array,
    noncontiguous array, varying, or dynamic.

 destination-string

    OpenVMS usage:char_string
    type:         character string
    access:       write only
    mechanism:    by descriptor

    Destination string to which the source string is copied. The
    destination-string argument contains the address of a descriptor
    pointing to this destination string.

    The following actions occur depending on the class of the
    destination string's descriptor:

    Descriptor
    Class          Action

    S, Z, SD, A,   Copy the source string. If needed, space-fill 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 source string to destination string up to
                   the limit of the descriptor MAXSTRLEN field with
                   no padding. Readjust the current length (CURLEN)
                   field to the actual number of bytes copied.
Close Help