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
syrenc

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

     SYRENC ( Rename an existing symbol )

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

Abstract

     Rename an existing symbol in a character 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:* )
     CHARACTER*(*)         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 character symbol table.

Detailed_Output

     TABSYM,
     TABPTR,
     TABVAL   are components of the character 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:

        BOHR      -->   HYDROGEN ATOM
        EINSTEIN  -->   SPECIAL RELATIVITY
                        PHOTOELECTRIC EFFECT
                        BROWNIAN MOTION
        FERMI     -->   NUCLEAR FISSION
        HAHN      -->   NUCLEAR FISSION
        PAULI     -->   EXCLUSION PRINCIPLE
                        NEUTRINO

     The call,

     CALL SYRENC ( 'FERMI', 'STRASSMAN', TABSYM, TABPTR, TABVAL )

     modifies the contents of the symbol table to be:

        BOHR      -->   HYDROGEN ATOM
        EINSTEIN  -->   SPECIAL RELATIVITY
                        PHOTOELECTRIC EFFECT
                        BROWNIAN MOTION
        HAHN      -->   NUCLEAR FISSION
        PAULI     -->   EXCLUSION PRINCIPLE
                        NEUTRINO
        STRASSMAN -->   NUCLEAR FISSION


     The next call,

     CALL SYRENC ( 'HAHN', 'STRASSMAN', TABSYM, TABPTR, TABVAL )

     modifies the contents of the symbol table to be:

        BOHR      -->   HYDROGEN ATOM
        EINSTEIN  -->   SPECIAL RELATIVITY
                        PHOTOELECTRIC EFFECT
                        BROWNIAN MOTION
        PAULI     -->   EXCLUSION PRINCIPLE
                        NEUTRINO
        HAHN      -->   NUCLEAR FISSION

     Note that the symbol "STRASSMAN" was deleted from the table,
     and the symbol "HAHN" 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 SYRENC ( 'FERMI', 'HAHN', TABSYM, TABPTR, TABVAL )

     does not modify the contents of the symbol table. It signals
     the error SPICE(NOSUCHSYMBOL) because the symbol "FERMI" 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