String Comparison
Author: JTC1/SC22/WG9/ARG, by Randall Brukardt, ARG Editor

Ada Reference Manual — Legal Information

# A.4.10 String Comparison

#### Static Semantics

1/3
The library function Strings.Equal_Case_Insensitive has the following declaration:
2/3
function Ada.Strings.Equal_Case_Insensitive (Left, Right : String)
return Boolean;
pragma Pure(Ada.Strings.Equal_Case_Insensitive);
3/3
Returns True if the strings consist of the same sequence of characters after applying locale-independent simple case folding, as defined by documents referenced in the note in Clause 1 of ISO/IEC 10646:2011. Otherwise, returns False. This function uses the same method as is used to determine whether two identifiers are the same.
4/3
The library function Strings.Fixed.Equal_Case_Insensitive has the following declaration:
5/3
with Ada.Strings.Equal_Case_Insensitive;
function Ada.Strings.Fixed.Equal_Case_Insensitive
(Left, Right : String) return Boolean
renames Ada.Strings.Equal_Case_Insensitive;
6/3
The generic library function Strings.Bounded.Equal_Case_Insensitive has the following declaration:
7/3
generic
with package Bounded is
new Ada.Strings.Bounded.Generic_Bounded_Length (<>);
function Ada.Strings.Bounded.Equal_Case_Insensitive
(Left, Right : Bounded.Bounded_String) return Boolean;
pragma Preelaborate(Ada.Strings.Bounded.Equal_Case_Insensitive);
8/3
Equivalent to Strings.Equal_Case_Insensitive (Bounded.To_String (Left), Bounded.To_String (Right));
9/3
The library function Strings.Unbounded.Equal_Case_Insensitive has the following declaration:
10/3
function Ada.Strings.Unbounded.Equal_Case_Insensitive
(Left, Right : Unbounded_String) return Boolean;
pragma Preelaborate(Ada.Strings.Unbounded.Equal_Case_Insensitive);
11/3
Equivalent to Strings.Equal_Case_Insensitive (To_String (Left), To_String (Right));
12/3
The library function Strings.Less_Case_Insensitive has the following declaration:
13/3
function Ada.Strings.Less_Case_Insensitive (Left, Right : String)
return Boolean;
pragma Pure(Ada.Strings.Less_Case_Insensitive);
14/3
Performs a lexicographic comparison of strings Left and Right, converted to lower case.
15/3
The library function Strings.Fixed.Less_Case_Insensitive has the following declaration:
16/3
with Ada.Strings.Less_Case_Insensitive;
function Ada.Strings.Fixed.Less_Case_Insensitive
(Left, Right : String) return Boolean
renames Ada.Strings.Less_Case_Insensitive;
17/3
The generic library function Strings.Bounded.Less_Case_Insensitive has the following declaration:
18/3
generic
with package Bounded is
new Ada.Strings.Bounded.Generic_Bounded_Length (<>);
function Ada.Strings.Bounded.Less_Case_Insensitive
(Left, Right : Bounded.Bounded_String) return Boolean;
pragma Preelaborate(Ada.Strings.Bounded.Less_Case_Insensitive);
19/3
Equivalent to Strings.Less_Case_Insensitive (Bounded.To_String (Left), Bounded.To_String (Right));
20/3
The library function Strings.Unbounded.Less_Case_Insensitive has the following declaration:
21/3
function Ada.Strings.Unbounded.Less_Case_Insensitive
(Left, Right : Unbounded_String) return Boolean;
pragma Preelaborate(Ada.Strings.Unbounded.Less_Case_Insensitive);
22/3
Equivalent to Strings.Less_Case_Insensitive (To_String (Left), To_String (Right));

Ada 2005 and 2012 Editions sponsored in part by Ada-Europe