A.4.10 String Comparison
Static Semantics
The library function
Strings.Equal_Case_Insensitive has the following declaration:
function Ada.Strings.Equal_Case_Insensitive (Left, Right : String)
return Boolean;
pragma Pure(Ada.Strings.Equal_Case_Insensitive);
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.
The library function
Strings.Fixed.Equal_Case_Insensitive has the following declaration:
with Ada.Strings.Equal_Case_Insensitive;
function Ada.Strings.Fixed.Equal_Case_Insensitive
(Left, Right : String)
return Boolean
renames Ada.Strings.Equal_Case_Insensitive;
The generic library
function Strings.Bounded.Equal_Case_Insensitive has the following declaration:
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);
Equivalent to Strings.Equal_Case_Insensitive
(Bounded.To_String (Left), Bounded.To_String (Right));
The library function
Strings.Unbounded.Equal_Case_Insensitive has the following declaration:
function Ada.Strings.Unbounded.Equal_Case_Insensitive
(Left, Right : Unbounded_String)
return Boolean;
pragma Preelaborate(Ada.Strings.Unbounded.Equal_Case_Insensitive);
Equivalent to Strings.Equal_Case_Insensitive
(To_String (Left), To_String (Right));
The library function
Strings.Less_Case_Insensitive has the following declaration:
function Ada.Strings.Less_Case_Insensitive (Left, Right : String)
return Boolean;
pragma Pure(Ada.Strings.Less_Case_Insensitive);
Performs a lexicographic
comparison of strings Left and Right, converted to lower case.
The library function
Strings.Fixed.Less_Case_Insensitive has the following declaration:
with Ada.Strings.Less_Case_Insensitive;
function Ada.Strings.Fixed.Less_Case_Insensitive
(Left, Right : String)
return Boolean
renames Ada.Strings.Less_Case_Insensitive;
The generic library
function Strings.Bounded.Less_Case_Insensitive has the following declaration:
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);
Equivalent to Strings.Less_Case_Insensitive
(Bounded.To_String (Left), Bounded.To_String (Right));
The library function
Strings.Unbounded.Less_Case_Insensitive has the following declaration:
function Ada.Strings.Unbounded.Less_Case_Insensitive
(Left, Right : Unbounded_String)
return Boolean;
pragma Preelaborate(Ada.Strings.Unbounded.Less_Case_Insensitive);
Equivalent to Strings.Less_Case_Insensitive
(To_String (Left), To_String (Right));
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe