| syrenc |
|
Table of contents
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