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
locale-independent simple case folding, as defined by documents referenced
in Clause 2 of ISO/IEC 10646:2020. 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