Ada 编程/库/Ada.Strings.Wide_Wide_Bounded
外观
此语言特性仅从 Ada 2005 开始可用。
Ada.Strings.Wide_Wide_Bounded 是 预定义语言环境 自 Ada 2005 以来的一部分。
-- 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;
外部示例
[编辑源代码]- 在以下位置搜索
Ada.Strings.Wide_Wide_Bounded的 **示例**:Rosetta Code、GitHub (gist)、任何 Alire 包 或 本。 - 在以下位置搜索与
Ada.Strings.Wide_Wide_Bounded相关的 **帖子**:Stack Overflow、comp.lang.ada 或 任何与 Ada 相关的页面。
FSF GNAT
- 规范:a-stzbou.ads
- 主体:a-stzbou.adb
drake
