sypopi |
Table of contents
ProcedureSYPOPI ( Pop a value from a particular symbol ) SUBROUTINE SYPOPI ( NAME, TABSYM, TABPTR, TABVAL, VALUE, FOUND ) AbstractPop a value associated with a particular symbol in an integer symbol table. The first value associated with the symbol is removed, and subsequent values are moved forward. Required_ReadingSYMBOLS KeywordsSYMBOLS DeclarationsIMPLICIT NONE INTEGER LBCELL PARAMETER ( LBCELL = -5 ) CHARACTER*(*) NAME CHARACTER*(*) TABSYM ( LBCELL:* ) INTEGER TABPTR ( LBCELL:* ) INTEGER TABVAL ( LBCELL:* ) INTEGER VALUE LOGICAL FOUND Brief_I/OVARIABLE I/O DESCRIPTION -------- --- -------------------------------------------------- NAME I Name of the symbol whose associated value is to be popped. TABSYM, TABPTR, TABVAL I-O Components of the symbol table. VALUE O Value that was popped. FOUND O .TRUE. if the symbol exists, .FALSE. otherwise. Detailed_InputNAME is the name of the symbol whose associated value is to be popped. TABSYM, TABPTR, TABVAL are the components of an integer symbol table. Detailed_OutputTABSYM, TABPTR, TABVAL are the components of an integer symbol table. On output, the value is removed from the symbol table, and the remaining values associated with the symbol are moved forward in the value table. If no other values are associated with the symbol, the symbol is removed from the symbol table. VALUE is the value that was popped. This value was the first value in the symbol table that was associated with the symbol NAME. FOUND is .TRUE. if NAME is in the symbol table, otherwise it is .FALSE. ParametersNone. ExceptionsNone. FilesNone. ParticularsIf there are no remaining values associated with the symbol after VALUE has been popped, the symbol is removed from the symbol table. ExamplesThe contents of the symbol table are: books --> 5 erasers --> 6 pencils --> 18 12 pens --> 10 12 24 The call, CALL SYPOPI ( 'pens', TABSYM, TABPTR, TABVAL, VALUE, FOUND ) modifies the contents of the symbol table to be: books --> 5 erasers --> 6 pencils --> 18 12 pens --> 12 24 FOUND is .TRUE., and VALUE is 10. The next call, CALL SYPOPI ( 'erasers', TABSYM, TABPTR, TABVAL, VALUE, FOUND ) modifies the contents of the symbol table to be: books --> 5 pencils --> 18 12 pens --> 12 24 FOUND is .TRUE., and VALUE is 6. Note that because "erasers" had only one value associated with it, it was removed from the symbol table. RestrictionsNone. Literature_ReferencesNone. Author_and_InstitutionJ. Diaz del Rio (ODC Space) L.S. Elson (JPL) H.A. Neilan (JPL) W.L. Taber (JPL) I.M. Underwood (JPL) VersionSPICELIB Version 1.1.0, 08-APR-2021 (JDR) PLACEHOLDER: Please provide version description. SPICELIB Version 1.0.2, 10-DEC-2002 (LSE) Fixed typo (FISSION') in header 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:00 2021