< Ada Programming < Libraries

Ada. Time-tested, safe and secure.
This language feature is only available from Ada 2005 on. Ada.Strings.Wide_Wide_Bounded is a unit of the Predefined Language Environment since Ada 2005.
Specification
-- Standard Ada library specification -- Copyright (c) 2003-2018 Maxim Reznik <reznikmm@gmail.com> -- Copyright (c) 2004-2016 AXE Consultants -- Copyright (c) 2004, 2005, 2006 Ada-Europe -- Copyright (c) 2000 The MITRE Corporation, Inc. -- Copyright (c) 1992, 1993, 1994, 1995 Intermetrics, Inc. -- SPDX-License-Identifier: BSD-3-Clause and LicenseRef-AdaReferenceManual -- -------------------------------------------------------------------------withAda.Strings.Wide_Wide_Maps;packageAda.Strings.Wide_Wide_BoundedispragmaPreelaborate (Wide_Wide_Bounded);genericMax : Positive; -- Maximum length of a Bounded_Wide_Wide_StringpackageGeneric_Bounded_LengthisMax_Length :constantPositive := Max;typeBounded_Wide_Wide_Stringisprivate; Null_Bounded_Wide_Wide_String :constantBounded_Wide_Wide_String;subtypeLength_RangeisNaturalrange0 .. Max_Length;functionLength (Source :inBounded_Wide_Wide_String)returnLength_Range; -- Conversion, Concatenation, and Selection functionsfunctionTo_Bounded_Wide_Wide_String (Source :inWide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;functionTo_Wide_Wide_String (Source :inBounded_Wide_Wide_String)returnWide_Wide_String;procedureSet_Bounded_Wide_Wide_String (Target :outBounded_Wide_Wide_String; Source :inWide_Wide_String; Drop :inTruncation := Error);functionAppend (Left, Right :inBounded_Wide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;functionAppend (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;functionAppend (Left :inWide_Wide_String; Right :inBounded_Wide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;functionAppend (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_Character; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;functionAppend (Left :inWide_Wide_Character; Right :inBounded_Wide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;procedureAppend (Source :inoutBounded_Wide_Wide_String; New_Item :inBounded_Wide_Wide_String; Drop :inTruncation := Error);procedureAppend (Source :inoutBounded_Wide_Wide_String; New_Item :inWide_Wide_String; Drop :inTruncation := Error);procedureAppend (Source :inoutBounded_Wide_Wide_String; New_Item :inWide_Wide_Character; Drop :inTruncation := Error);function"&" (Left, Right :inBounded_Wide_Wide_String)returnBounded_Wide_Wide_String;function"&" (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_String)returnBounded_Wide_Wide_String;function"&" (Left :inWide_Wide_String; Right :inBounded_Wide_Wide_String)returnBounded_Wide_Wide_String;function"&" (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_Character)returnBounded_Wide_Wide_String;function"&" (Left :inWide_Wide_Character; Right :inBounded_Wide_Wide_String)returnBounded_Wide_Wide_String;functionElement (Source :inBounded_Wide_Wide_String; Index :inPositive)returnWide_Wide_Character;procedureReplace_Element (Source :inoutBounded_Wide_Wide_String; Index :inPositive; By :inWide_Wide_Character);functionSlice (Source :inBounded_Wide_Wide_String; Low :inPositive; High :inNatural)returnWide_Wide_String;functionBounded_Slice (Source :inBounded_Wide_Wide_String; Low :inPositive; High :inNatural)returnBounded_Wide_Wide_String;procedureBounded_Slice (Source :inBounded_Wide_Wide_String; Target :outBounded_Wide_Wide_String; Low :inPositive; High :inNatural);function"=" (Left, Right :inBounded_Wide_Wide_String)returnBoolean;function"=" (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_String)returnBoolean;function"=" (Left :inWide_Wide_String; Right :inBounded_Wide_Wide_String)returnBoolean;function"<" (Left, Right :inBounded_Wide_Wide_String)returnBoolean;function"<" (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_String)returnBoolean;function"<" (Left :inWide_Wide_String; Right :inBounded_Wide_Wide_String)returnBoolean;function"<=" (Left, Right :inBounded_Wide_Wide_String)returnBoolean;function"<=" (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_String)returnBoolean;function"<=" (Left :inWide_Wide_String; Right :inBounded_Wide_Wide_String)returnBoolean;function">" (Left, Right :inBounded_Wide_Wide_String)returnBoolean;function">" (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_String)returnBoolean;function">" (Left :inWide_Wide_String; Right :inBounded_Wide_Wide_String)returnBoolean;function">=" (Left, Right :inBounded_Wide_Wide_String)returnBoolean;function">=" (Left :inBounded_Wide_Wide_String; Right :inWide_Wide_String)returnBoolean;function">=" (Left :inWide_Wide_String; Right :inBounded_Wide_Wide_String)returnBoolean; -- Search subprogramsfunctionIndex (Source :inBounded_Wide_Wide_String; Pattern :inWide_Wide_String; From :inPositive; Going :inDirection := Forward; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping := Wide_Wide_Maps.Identity)returnNatural;functionIndex (Source :inBounded_Wide_Wide_String; Pattern :inWide_Wide_String; From :inPositive; Going :inDirection := Forward; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping_Function)returnNatural;functionIndex (Source :inBounded_Wide_Wide_String; Pattern :inWide_Wide_String; Going :inDirection := Forward; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping := Wide_Wide_Maps.Identity)returnNatural;functionIndex (Source :inBounded_Wide_Wide_String; Pattern :inWide_Wide_String; Going :inDirection := Forward; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping_Function)returnNatural;functionIndex (Source :inBounded_Wide_Wide_String; Set :inWide_Wide_Maps.Wide_Wide_Character_Set; From :inPositive; Test :inMembership := Inside; Going :inDirection := Forward)returnNatural;functionIndex (Source :inBounded_Wide_Wide_String; Set :inWide_Wide_Maps.Wide_Wide_Character_Set; Test :inMembership := Inside; Going :inDirection := Forward)returnNatural;functionIndex_Non_Blank (Source :inBounded_Wide_Wide_String; From :inPositive; Going :inDirection := Forward)returnNatural;functionIndex_Non_Blank (Source :inBounded_Wide_Wide_String; Going :inDirection := Forward)returnNatural;functionCount (Source :inBounded_Wide_Wide_String; Pattern :inWide_Wide_String; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping := Wide_Wide_Maps.Identity)returnNatural;functionCount (Source :inBounded_Wide_Wide_String; Pattern :inWide_Wide_String; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping_Function)returnNatural;functionCount (Source :inBounded_Wide_Wide_String; Set :inWide_Wide_Maps.Wide_Wide_Character_Set)returnNatural;procedureFind_Token (Source :inBounded_Wide_Wide_String; Set :inWide_Wide_Maps.Wide_Wide_Character_Set; Test :inMembership; First :outPositive; Last :outNatural); -- Wide_Wide_String translation subprogramsfunctionTranslate (Source :inBounded_Wide_Wide_String; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping)returnBounded_Wide_Wide_String;procedureTranslate (Source :inoutBounded_Wide_Wide_String; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping);functionTranslate (Source :inBounded_Wide_Wide_String; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping_Function)returnBounded_Wide_Wide_String;procedureTranslate (Source :inoutBounded_Wide_Wide_String; Mapping :inWide_Wide_Maps.Wide_Wide_Character_Mapping_Function); -- Wide_Wide_String transformation subprogramsfunctionReplace_Slice (Source :inBounded_Wide_Wide_String; Low :inPositive; High :inNatural; By :inWide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;procedureReplace_Slice (Source :inoutBounded_Wide_Wide_String; Low :inPositive; High :inNatural; By :inWide_Wide_String; Drop :inTruncation := Error);functionInsert (Source :inBounded_Wide_Wide_String; Before :inPositive; New_Item :inWide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;procedureInsert (Source :inoutBounded_Wide_Wide_String; Before :inPositive; New_Item :inWide_Wide_String; Drop :inTruncation := Error);functionOverwrite (Source :inBounded_Wide_Wide_String; Position :inPositive; New_Item :inWide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;procedureOverwrite (Source :inoutBounded_Wide_Wide_String; Position :inPositive; New_Item :inWide_Wide_String; Drop :inTruncation := Error);functionDelete (Source :inBounded_Wide_Wide_String; From :inPositive; Through :inNatural)returnBounded_Wide_Wide_String;procedureDelete (Source :inoutBounded_Wide_Wide_String; From :inPositive; Through :inNatural); -- Wide_Wide_String selector subprogramsfunctionTrim (Source :inBounded_Wide_Wide_String; Side :inTrim_End)returnBounded_Wide_Wide_String;procedureTrim (Source :inoutBounded_Wide_Wide_String; Side :inTrim_End);functionTrim (Source :inBounded_Wide_Wide_String; Left :inWide_Wide_Maps.Wide_Wide_Character_Set; Right :inWide_Wide_Maps.Wide_Wide_Character_Set)returnBounded_Wide_Wide_String;procedureTrim (Source :inoutBounded_Wide_Wide_String; Left :inWide_Wide_Maps.Wide_Wide_Character_Set; Right :inWide_Wide_Maps.Wide_Wide_Character_Set);functionHead (Source :inBounded_Wide_Wide_String; Count :inNatural; Pad :inWide_Wide_Character := Wide_Wide_Space; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;procedureHead (Source :inoutBounded_Wide_Wide_String; Count :inNatural; Pad :inWide_Wide_Character := Wide_Wide_Space; Drop :inTruncation := Error);functionTail (Source :inBounded_Wide_Wide_String; Count :inNatural; Pad :inWide_Wide_Character := Wide_Wide_Space; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;procedureTail (Source :inoutBounded_Wide_Wide_String; Count :inNatural; Pad :inWide_Wide_Character := Wide_Wide_Space; Drop :inTruncation := Error); -- Wide_Wide_String constructor subprogramsfunction"*" (Left :inNatural; Right :inWide_Wide_Character)returnBounded_Wide_Wide_String;function"*" (Left :inNatural; Right :inWide_Wide_String)returnBounded_Wide_Wide_String;function"*" (Left :inNatural; Right :inBounded_Wide_Wide_String)returnBounded_Wide_Wide_String;functionReplicate (Count :inNatural; Item :inWide_Wide_Character; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;functionReplicate (Count :inNatural; Item :inWide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;functionReplicate (Count :inNatural; Item :inBounded_Wide_Wide_String; Drop :inTruncation := Error)returnBounded_Wide_Wide_String;privatetypeBounded_Wide_Wide_Stringisnullrecord; Null_Bounded_Wide_Wide_String :constantBounded_Wide_Wide_String := (nullrecord);endGeneric_Bounded_Length;endAda.Strings.Wide_Wide_Bounded;
See also
Wikibook
External examples
- Search for examples of
Ada.Strings.Wide_Wide_Boundedin: Rosetta Code, GitHub or this Wikibook. - Search for any post related to
Ada.Strings.Wide_Wide_Boundedin: Stack Overflow, comp.lang.ada or any Ada related page.
Ada Reference Manual
Ada 2005
Ada 2012
Open-Source Implementations
FSF GNAT
- Specification: a-stzbou.ads
- Body: a-stzbou.adb
drake
- Specification: strings/a-stzbou.ads
This article is issued from Wikibooks. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.