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
syreni

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

     SYRENI ( Rename an existing symbol )

     SUBROUTINE SYRENI ( OLD, NEW, TABSYM, TABPTR, TABVAL )

Abstract

     Rename an existing symbol in an integer symbol table.

Required_Reading

     SYMBOLS

Keywords

     SYMBOLS

Declarations

     IMPLICIT NONE

     INTEGER               LBCELL
     PARAMETER           ( LBCELL = -5 )

     CHARACTER*(*)         OLD
     CHARACTER*(*)         NEW
     CHARACTER*(*)         TABSYM     ( LBCELL:* )
     INTEGER               TABPTR     ( LBCELL:* )
     INTEGER               TABVAL     ( LBCELL:* )

Brief_I/O

     VARIABLE  I/O  DESCRIPTION
     --------  ---  --------------------------------------------------
     OLD        I   Name of the symbol to be renamed.
     NEW        I   New name of the symbol.
     TABSYM,
     TABPTR,
     TABVAL    I-O  Components of the symbol table.

Detailed_Input

     OLD      is the name of the symbol to be renamed. If OLD is
              not in the symbol table, the tables are not modified.

     NEW      is the new name of the symbol. If the symbol NEW
              already exists in the symbol table, it is deleted.
              OLD is then renamed to NEW.

     TABSYM,
     TABPTR,
     TABVAL   are components of the integer symbol table.

Detailed_Output

     TABSYM,
     TABPTR,
     TABVAL   are components of the integer symbol table.
              The values previously associated with OLD are now
              associated with NEW. If OLD is not in the symbol
              table, the symbol tables are not modified.

Parameters

     None.

Exceptions

     1)  If the symbol OLD is not in the symbol table, the error
         SPICE(NOSUCHSYMBOL) is signaled.

Files

     None.

Particulars

     None.

Examples

     The contents of the symbol table are:

        books   -->   5
                     10
        erasers -->   6
        pencils -->  12
                     18
        pens    -->  10
                     12
                     24

     The call,

     CALL SYRENI ( 'pens', 'desks', TABSYM, TABPTR, TABVAL )

     modifies the contents of the symbol table to be:

        books   -->   5
                     10
        desks   -->  10
                     12
                     24
        erasers -->   6
        pencils -->  12
                     18


     The next call,

     CALL SYRENI ( 'erasers', 'desks', TABSYM, TABPTR, TABVAL )

     modifies the contents fo the symbol table to be:

        books   -->   5
                     10
        desks   -->   6
        pencils -->  12
                     18

     Note that the symbol "desks" was deleted from the table,
     and the symbol "erasers" was then renamed to "STRASSMAN". If the
     new symbol exists, it is deleted from the table before its name
     is given to another symbol.


     The next call,

     CALL SYRENI ( 'chairs', 'stools', TABSYM, TABPTR, TABVAL )

     does not modify the contents of the symbol table. However, it
     does signal the error SPICE(NOSUCHSYMBOL) because the symbol
     "chairs" does not exist in the symbol table.

Restrictions

     None.

Literature_References

     None.

Author_and_Institution

     J. Diaz del Rio    (ODC Space)
     H.A. Neilan        (JPL)
     W.L. Taber         (JPL)
     I.M. Underwood     (JPL)

Version

    SPICELIB Version 1.1.0, 03-JUN-2021 (JDR)

        Added IMPLICT NONE statement.

        Edited the header to comply with NAIF standard. Fixed I/O type
        of arguments TABSYM, TABPTR and TABVAL in $Brief_I/O table.

    SPICELIB Version 1.0.1, 10-MAR-1992 (WLT)

        Comment section for permuted index source lines was added
        following the header.

    SPICELIB Version 1.0.0, 31-JAN-1990 (IMU) (HAN)
Fri Dec 31 18:37:01 2021