diff options
Diffstat (limited to 'gcc-4.2.1/gcc/ada/stringt.h')
-rw-r--r-- | gcc-4.2.1/gcc/ada/stringt.h | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/gcc-4.2.1/gcc/ada/stringt.h b/gcc-4.2.1/gcc/ada/stringt.h deleted file mode 100644 index cda086519..000000000 --- a/gcc-4.2.1/gcc/ada/stringt.h +++ /dev/null @@ -1,87 +0,0 @@ -/**************************************************************************** - * * - * GNAT COMPILER COMPONENTS * - * * - * S T R I N G T * - * * - * C Header File * - * * - * Copyright (C) 1992-2003 Free Software Foundation, Inc. * - * * - * GNAT is free software; you can redistribute it and/or modify it under * - * terms of the GNU General Public License as published by the Free Soft- * - * ware Foundation; either version 2, or (at your option) any later ver- * - * sion. GNAT is distributed in the hope that it will be useful, but WITH- * - * OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY * - * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * - * for more details. You should have received a copy of the GNU General * - * Public License distributed with GNAT; see file COPYING. If not, write * - * to the Free Software Foundation, 51 Franklin Street, Fifth Floor, * - * Boston, MA 02110-1301, USA. * - * * - * GNAT was originally developed by the GNAT team at New York University. * - * Extensive contributions were provided by Ada Core Technologies Inc. * - * * - ****************************************************************************/ - -/* This file is the C file that corresponds to the Ada package spec - Stringt. It was created manually from stringt.ads and stringt.adb - - Note: only the access functions are provided, since the tree transformer - is not allowed to modify the tree or its auxiliary structures. - - This package contains routines for handling the strings table which is - used to store string constants encountered in the source, and also those - additional string constants generated by compile time concatenation and - other similar processing. - - A string constant in this table consists of a series of Char_Code values, - so that 16-bit character codes can be properly handled if this feature is - implemented in the scanner. - - There is no guarantee that hashing is used in the implementation. This - means that the caller cannot count on having the same Id value for two - identical strings stored separately. - - The String_Id values reference entries in the Strings table, which - contains String_Entry records that record the length of each stored string - and its starting location in the String_Chars table. */ - -struct String_Entry -{ - Int String_Index; - Int Length; -}; - -/* Pointer to string entry vector. This pointer is passed to the tree - transformer and stored in a global location. */ -extern struct String_Entry *Strings_Ptr; - -/* Pointer to name characters table. This pointer is passed to the tree - transformer and stored in a global location for access from here. The - String_Index values are subscripts into this array. */ -extern Char_Code *String_Chars_Ptr; - - -/* String_Length returns the length of the specified string. */ -INLINE Int String_Length (String_Id); - -INLINE Int -String_Length (String_Id Id) -{ - return Strings_Ptr[Id - First_String_Id].Length; -} - - -/* Get_String_Char obtains the specified character from a stored string. The - lower bound of stored strings is always 1, so the range of values is 1 to - String_Length (Id). */ -INLINE Char_Code Get_String_Char (String_Id, Int); - -INLINE Char_Code -Get_String_Char (String_Id Id, Int Index) -{ - return - String_Chars_Ptr - [Strings_Ptr[Id - First_String_Id].String_Index + Index - 1]; -} |