summaryrefslogtreecommitdiff
path: root/gcc/ada/a-stwifi.ads
diff options
context:
space:
mode:
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-02 13:55:47 +0000
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2001-10-02 13:55:47 +0000
commit1fac938ee5fb71eb038b3b33e393a02d5ea33190 (patch)
tree2984031fa75d4e716ac1f562efe5ae818a291ca8 /gcc/ada/a-stwifi.ads
parente6e7bf38fd3e54eef6e896049ef2d52135eab3d0 (diff)
downloadgcc-1fac938ee5fb71eb038b3b33e393a02d5ea33190.tar.gz
New Language: Ada
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45953 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/a-stwifi.ads')
-rw-r--r--gcc/ada/a-stwifi.ads234
1 files changed, 234 insertions, 0 deletions
diff --git a/gcc/ada/a-stwifi.ads b/gcc/ada/a-stwifi.ads
new file mode 100644
index 00000000000..a4bf2d9bddd
--- /dev/null
+++ b/gcc/ada/a-stwifi.ads
@@ -0,0 +1,234 @@
+------------------------------------------------------------------------------
+-- --
+-- GNAT RUNTIME COMPONENTS --
+-- --
+-- A D A . S T R I N G S . W I D E _ F I X E D --
+-- --
+-- S p e c --
+-- --
+-- $Revision: 1.11 $ --
+-- --
+-- This specification is adapted from the Ada Reference Manual for use with --
+-- GNAT. In accordance with the copyright of that document, you can freely --
+-- copy and modify this specification, provided that if you redistribute a --
+-- modified version, any changes that you have made are clearly indicated. --
+-- --
+------------------------------------------------------------------------------
+
+
+with Ada.Strings.Wide_Maps;
+
+package Ada.Strings.Wide_Fixed is
+pragma Preelaborate (Wide_Fixed);
+
+ -------------------------------------------------------------------
+ -- Copy Procedure for Wide_Strings of Possibly Different Lengths --
+ -------------------------------------------------------------------
+
+ procedure Move
+ (Source : in Wide_String;
+ Target : out Wide_String;
+ Drop : in Truncation := Error;
+ Justify : in Alignment := Left;
+ Pad : in Wide_Character := Ada.Strings.Wide_Space);
+
+ ------------------------
+ -- Search Subprograms --
+ ------------------------
+
+ function Index
+ (Source : in Wide_String;
+ Pattern : in Wide_String;
+ Going : in Direction := Forward;
+ Mapping : in Wide_Maps.Wide_Character_Mapping := Wide_Maps.Identity)
+ return Natural;
+
+ function Index
+ (Source : in Wide_String;
+ Pattern : in Wide_String;
+ Going : in Direction := Forward;
+ Mapping : in Wide_Maps.Wide_Character_Mapping_Function)
+ return Natural;
+
+ function Index
+ (Source : in Wide_String;
+ Set : in Wide_Maps.Wide_Character_Set;
+ Test : in Membership := Inside;
+ Going : in Direction := Forward)
+ return Natural;
+
+ function Index_Non_Blank
+ (Source : in Wide_String;
+ Going : in Direction := Forward)
+ return Natural;
+
+ function Count
+ (Source : in Wide_String;
+ Pattern : in Wide_String;
+ Mapping : in Wide_Maps.Wide_Character_Mapping := Wide_Maps.Identity)
+ return Natural;
+
+ function Count
+ (Source : in Wide_String;
+ Pattern : in Wide_String;
+ Mapping : in Wide_Maps.Wide_Character_Mapping_Function)
+ return Natural;
+
+ function Count
+ (Source : in Wide_String;
+ Set : in Wide_Maps.Wide_Character_Set)
+ return Natural;
+
+ procedure Find_Token
+ (Source : in Wide_String;
+ Set : in Wide_Maps.Wide_Character_Set;
+ Test : in Membership;
+ First : out Positive;
+ Last : out Natural);
+
+ -----------------------------------------
+ -- Wide_String Translation Subprograms --
+ -----------------------------------------
+
+ function Translate
+ (Source : in Wide_String;
+ Mapping : in Wide_Maps.Wide_Character_Mapping)
+ return Wide_String;
+
+ procedure Translate
+ (Source : in out Wide_String;
+ Mapping : in Wide_Maps.Wide_Character_Mapping);
+
+ function Translate
+ (Source : in Wide_String;
+ Mapping : in Wide_Maps.Wide_Character_Mapping_Function)
+ return Wide_String;
+
+ procedure Translate
+ (Source : in out Wide_String;
+ Mapping : in Wide_Maps.Wide_Character_Mapping_Function);
+
+ --------------------------------------------
+ -- Wide_String Transformation Subprograms --
+ --------------------------------------------
+
+ function Replace_Slice
+ (Source : in Wide_String;
+ Low : in Positive;
+ High : in Natural;
+ By : in Wide_String)
+ return Wide_String;
+
+ procedure Replace_Slice
+ (Source : in out Wide_String;
+ Low : in Positive;
+ High : in Natural;
+ By : in Wide_String;
+ Drop : in Truncation := Error;
+ Justify : in Alignment := Left;
+ Pad : in Wide_Character := Ada.Strings.Wide_Space);
+
+ function Insert
+ (Source : in Wide_String;
+ Before : in Positive;
+ New_Item : in Wide_String)
+ return Wide_String;
+
+ procedure Insert
+ (Source : in out Wide_String;
+ Before : in Positive;
+ New_Item : in Wide_String;
+ Drop : in Truncation := Error);
+
+ function Overwrite
+ (Source : in Wide_String;
+ Position : in Positive;
+ New_Item : in Wide_String)
+ return Wide_String;
+
+ procedure Overwrite
+ (Source : in out Wide_String;
+ Position : in Positive;
+ New_Item : in Wide_String;
+ Drop : in Truncation := Right);
+
+ function Delete
+ (Source : in Wide_String;
+ From : in Positive;
+ Through : in Natural)
+ return Wide_String;
+
+ procedure Delete
+ (Source : in out Wide_String;
+ From : in Positive;
+ Through : in Natural;
+ Justify : in Alignment := Left;
+ Pad : in Wide_Character := Ada.Strings.Wide_Space);
+
+ --------------------------------------
+ -- Wide_String Selector Subprograms --
+ --------------------------------------
+
+ function Trim
+ (Source : in Wide_String;
+ Side : in Trim_End)
+ return Wide_String;
+
+ procedure Trim
+ (Source : in out Wide_String;
+ Side : in Trim_End;
+ Justify : in Alignment := Left;
+ Pad : in Wide_Character := Wide_Space);
+
+ function Trim
+ (Source : in Wide_String;
+ Left : in Wide_Maps.Wide_Character_Set;
+ Right : in Wide_Maps.Wide_Character_Set)
+ return Wide_String;
+
+ procedure Trim
+ (Source : in out Wide_String;
+ Left : in Wide_Maps.Wide_Character_Set;
+ Right : in Wide_Maps.Wide_Character_Set;
+ Justify : in Alignment := Ada.Strings.Left;
+ Pad : in Wide_Character := Ada.Strings.Wide_Space);
+
+ function Head
+ (Source : in Wide_String;
+ Count : in Natural;
+ Pad : in Wide_Character := Ada.Strings.Wide_Space)
+ return Wide_String;
+
+ procedure Head
+ (Source : in out Wide_String;
+ Count : in Natural;
+ Justify : in Alignment := Left;
+ Pad : in Wide_Character := Ada.Strings.Wide_Space);
+
+ function Tail
+ (Source : in Wide_String;
+ Count : in Natural;
+ Pad : in Wide_Character := Ada.Strings.Wide_Space)
+ return Wide_String;
+
+ procedure Tail
+ (Source : in out Wide_String;
+ Count : in Natural;
+ Justify : in Alignment := Left;
+ Pad : in Wide_Character := Ada.Strings.Wide_Space);
+
+ ---------------------------------------
+ -- Wide_String Constructor Functions --
+ ---------------------------------------
+
+ function "*"
+ (Left : in Natural;
+ Right : in Wide_Character)
+ return Wide_String;
+
+ function "*"
+ (Left : in Natural;
+ Right : in Wide_String)
+ return Wide_String;
+
+end Ada.Strings.Wide_Fixed;