-- Copyright (c) 1990 Regents of the University of California. -- All rights reserved. -- -- This software was developed by John Self of the Arcadia project -- at the University of California, Irvine. -- -- Redistribution and use in source and binary forms are permitted -- provided that the above copyright notice and this paragraph are -- duplicated in all such forms and that any documentation, -- advertising materials, and other materials related to such -- distribution and use acknowledge that the software was developed -- by the University of California, Irvine. The name of the -- University may not be used to endorse or promote products derived -- from this software without specific prior written permission. -- THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR -- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED -- WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. -- TITLE symbol table routines -- AUTHOR: John Self (UCI) -- DESCRIPTION implements only a simple symbol table using open hashing -- NOTES could be faster, but it isn't used much -- $Header: /co/ua/self/arcadia/aflex/ada/src/RCS/symS.a,v 1.4 90/01/12 15:20:42 self Exp Locker: self $ with Ada.Strings.Wide_Wide_Unbounded; with MISC_DEFS; package SYM is use MISC_DEFS; procedure ADDSYM (SYM, STR_DEF : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String; INT_DEF : in INTEGER; TABLE : in out HASH_TABLE; TABLE_SIZE : in INTEGER; RESULT : out BOOLEAN); -- result indicates success procedure CCLINSTAL (CCLTXT : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String; CCLNUM : INTEGER); function CCLLOOKUP (CCLTXT : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String) return INTEGER; function FINDSYM (SYMBOL : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String; TABLE : HASH_TABLE; TABLE_SIZE : INTEGER) return HASH_LINK; function HASHFUNCT (STR : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String; HASH_SIZE : INTEGER) return INTEGER; procedure NDINSTAL (ND, DEF : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String); function NDLOOKUP (ND : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String) return Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String; procedure SCINSTAL (STR : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String; XCLUFLG : Boolean); function SCLOOKUP (STR : Ada.Strings.Wide_Wide_Unbounded.Unbounded_Wide_Wide_String) return Integer; end SYM;