Ada 程式設計/庫/Ada.Strings.Fixed
外觀
此語言特性從 Ada 95 開始可用。
Ada.Strings.Fixed 是自 Ada 95 以來 預定義語言環境 的一個單元。
-- 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.Maps;packageAda.Strings.FixedispragmaPreelaborate (Fixed); -- "Copy" procedure for strings of possibly different lengthsprocedureMove (Source :inString; Target :outString; Drop :inTruncation := Error; Justify :inAlignment := Left; Pad :inCharacter := Space); -- Search subprogramsfunctionIndex (Source :inString; Pattern :inString; From :inPositive; Going :inDirection := Forward; Mapping :inMaps.Character_Mapping := Maps.Identity)returnNatural;functionIndex (Source :inString; Pattern :inString; From :inPositive; Going :inDirection := Forward; Mapping :inMaps.Character_Mapping_Function)returnNatural;functionIndex (Source :inString; Pattern :inString; Going :inDirection := Forward; Mapping :inMaps.Character_Mapping := Maps.Identity)returnNatural;functionIndex (Source :inString; Pattern :inString; Going :inDirection := Forward; Mapping :inMaps.Character_Mapping_Function)returnNatural;functionIndex (Source :inString; Set :inMaps.Character_Set; From :inPositive; Test :inMembership := Inside; Going :inDirection := Forward)returnNatural;functionIndex (Source :inString; Set :inMaps.Character_Set; Test :inMembership := Inside; Going :inDirection := Forward)returnNatural;functionIndex_Non_Blank (Source :inString; From :inPositive; Going :inDirection := Forward)returnNatural;functionIndex_Non_Blank (Source :inString; Going :inDirection := Forward)returnNatural;functionCount (Source :inString; Pattern :inString; Mapping :inMaps.Character_Mapping := Maps.Identity)returnNatural;functionCount (Source :inString; Pattern :inString; Mapping :inMaps.Character_Mapping_Function)returnNatural;functionCount (Source :inString; Set :inMaps.Character_Set)returnNatural;procedureFind_Token (Source :inString; Set :inMaps.Character_Set; Test :inMembership; First :outPositive; Last :outNatural); -- String translation subprogramsfunctionTranslate (Source :inString; Mapping :inMaps.Character_Mapping)returnString;procedureTranslate (Source :inoutString; Mapping :inMaps.Character_Mapping);functionTranslate (Source :inString; Mapping :inMaps.Character_Mapping_Function)returnString;procedureTranslate (Source :inoutString; Mapping :inMaps.Character_Mapping_Function); -- String transformation subprogramsfunctionReplace_Slice (Source :inString; Low :inPositive; High :inNatural; By :inString)returnString;procedureReplace_Slice (Source :inoutString; Low :inPositive; High :inNatural; By :inString; Drop :inTruncation := Error; Justify :inAlignment := Left; Pad :inCharacter := Space);functionInsert (Source :inString; Before :inPositive; New_Item :inString)returnString;procedureInsert (Source :inoutString; Before :inPositive; New_Item :inString; Drop :inTruncation := Error);functionOverwrite (Source :inString; Position :inPositive; New_Item :inString)returnString;procedureOverwrite (Source :inoutString; Position :inPositive; New_Item :inString; Drop :inTruncation := Right);functionDelete (Source :inString; From :inPositive; Through :inNatural)returnString;procedureDelete (Source :inoutString; From :inPositive; Through :inNatural; Justify :inAlignment := Left; Pad :inCharacter := Space); -- String selector subprogramsfunctionTrim (Source :inString; Side :inTrim_End)returnString;procedureTrim (Source :inoutString; Side :inTrim_End; Justify :inAlignment := Left; Pad :inCharacter := Space);functionTrim (Source :inString; Left :inMaps.Character_Set; Right :inMaps.Character_Set)returnString;procedureTrim (Source :inoutString; Left :inMaps.Character_Set; Right :inMaps.Character_Set; Justify :inAlignment := Strings.Left; Pad :inCharacter := Space);functionHead (Source :inString; Count :inNatural; Pad :inCharacter := Space)returnString;procedureHead (Source :inoutString; Count :inNatural; Justify :inAlignment := Left; Pad :inCharacter := Space);functionTail (Source :inString; Count :inNatural; Pad :inCharacter := Space)returnString;procedureTail (Source :inoutString; Count :inNatural; Justify :inAlignment := Left; Pad :inCharacter := Space); -- String constructor functionsfunction"*" (Left :inNatural; Right :inCharacter)returnString;function"*" (Left :inNatural; Right :inString)returnString;endAda.Strings.Fixed;
外部示例
[編輯原始碼]- 在以下位置搜尋
Ada.Strings.Fixed的示例:Rosetta Code,GitHub (gists),任何 Alire 包 或 本華夏公益教科書。 - 在以下位置搜尋與
Ada.Strings.Fixed相關的帖子:Stack Overflow,comp.lang.ada 或 任何與 Ada 相關的頁面。
FSF GNAT
- 規範:a-strfix.ads
- 主體:a-strfix.adb
drake
