Index of Functions: A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 
Index Page
lxcsid

Table of contents
Procedure
Abstract
Required_Reading
Keywords
Declarations
Brief_I/O
Detailed_Input
Detailed_Output
Parameters
Exceptions
Files
Particulars
Examples
Restrictions
Literature_References
Author_and_Institution
Version

Procedure

     LXCSID ( Lex, custom identifier characters )

     ENTRY LXCSID ( HDCHRS, TLCHRS, IDSPEC )

Abstract

     Set the acceptable characters that may appear in an identifier
     token.

Required_Reading

     None.

Keywords

     CHARACTER
     PARSING
     SCANNING
     STRING
     UTILITY

Declarations

    IMPLICIT NONE

    INTEGER               MXSPEC
    PARAMETER           ( MXSPEC = 512 )

    INTEGER               LBCELL
    PARAMETER           ( LBCELL = -5 )

    CHARACTER*(*)         HDCHRS
    CHARACTER*(*)         TLCHRS
    INTEGER               IDSPEC ( LBCELL : * )

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     HDCHRS     I   Allowed head characters for identifiers.
     TLCHRS     I   Allowed tail characters for identifiers.
     IDSPEC    I-O  Identifier character specification.
     MXSPEC     P   Recommended size for declaration of IDSPEC.
     LBCELL     P   The SPICE cell lower bound.

Detailed_Input

     HDCHRS   is a string containing the set of characters
              allowed as the first (`head') character of an
              identifier token. Case is significant; if both
              upper and lower case instances of a letter are
              allowed, they must both be listed. White space is
              ignored. Non-printing characters are not allowed.

     TLCHRS   is a string containing the set of characters
              allowed as tail characters (characters following
              the head character) of an identifier token. Case
              is significant; white space is ignored.
              Non-printing characters are not allowed.

     IDSPEC   is an integer cell. The caller must initialize
              IDSPEC as a cell, and should use MXSPEC as the size
              of IDSPEC.

Detailed_Output

     IDSPEC   is an integer cell containing a specification of
              the head and tail identifier character sets to be
              used the entry point LXIDNT in scanning strings.
              The caller must initialize IDSPEC as a cell, and
              should use MXSPEC as the size of IDSPEC.

Parameters

     MXSPEC   is the recommended size for the declaration of
              IDSPEC; the caller should declare IDSPEC as shown:

                 INTEGER       IDSPEC ( LBCELL : MXSPEC )

              The caller should also initialize IDSPEC as shown:

                 CALL SSIZEI ( MXSPEC, IDSPEC )

     LBCELL   is the SPICE cell lower bound.

Exceptions

     1)  If non-printing characters are found in either of the input
         arguments HDCHRS or TLCHRS, the error SPICE(NONPRINTINGCHARS)
         is signaled. The set of allowed identifier characters is not
         modified.

Files

     None.

Particulars

     This routine allows a calling program to customize the set of
     allowed patterns for identifiers recognized by LXIDNT.

     Normally, this routine should be called once during the calling
     program's initialization, if this routine is called at all.

Examples

     See the $Examples section of the umbrella routine LXNAME.

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

     N.J. Bachman       (JPL)
     J. Diaz del Rio    (ODC Space)
     B.V. Semenov       (JPL)

Version

    SPICELIB Version 1.1.0, 27-AUG-2021 (JDR)

        Added IMPLICIT NONE statement.

        Edited the header to comply with NAIF standard.

    SPICELIB Version 1.0.1, 10-FEB-2014 (BVS)

        Added LBCELL to the $Declarations, $Brief_I/O, and $Parameters
        sections.

    SPICELIB Version 1.0.0, 25-OCT-1995 (NJB)
Fri Dec 31 18:36:33 2021