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
with Pure;
Returns True if
the strings consist of the same sequence of characters after applying
simple case folding, as defined by Section 3.13 of Unicode Version 15.0.
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
with Preelaborate, Nonblocking, Global =>
in out synchronized;
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
with Preelaborate, Nonblocking, Global =>
in out synchronized;
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
with Pure;
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
with Preelaborate, Nonblocking, Global =>
in out synchronized;
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
with Preelaborate, Nonblocking, Global =>
in out synchronized;
Equivalent to Strings.Less_Case_Insensitive
(To_String (Left), To_String (Right));
Ada 2005 and 2012 Editions sponsored in part by Ada-Europe