49 lines
1.4 KiB
Ada
49 lines
1.4 KiB
Ada
-- { dg-do run }
|
|
|
|
with Ada.Text_IO; use Ada.Text_IO;
|
|
with Encode_String1_Pkg;
|
|
with GNAT.Encode_String;
|
|
with System.WCh_Con; use System.WCh_Con;
|
|
|
|
procedure Encode_String1 is
|
|
High_WS : constant Wide_String (1000 .. 1009) := (others => '1');
|
|
High_WWS : constant Wide_Wide_String (1000 .. 1009) := (others => '2');
|
|
Low_WS : constant Wide_String (3 .. 12) := (others => '3');
|
|
Low_WWS : constant Wide_Wide_String (3 .. 12) := (others => '4');
|
|
|
|
procedure Test_Method (Method : WC_Encoding_Method);
|
|
-- Test Wide_String and Wide_Wide_String encodings using method Method to
|
|
-- encode them.
|
|
|
|
-----------------
|
|
-- Test_Method --
|
|
-----------------
|
|
|
|
procedure Test_Method (Method : WC_Encoding_Method) is
|
|
package Encoder is new GNAT.Encode_String (Method);
|
|
|
|
procedure WS_Tester is new Encode_String1_Pkg
|
|
(C => Wide_Character,
|
|
S => Wide_String,
|
|
Encode => Encoder.Encode_Wide_String);
|
|
|
|
procedure WWS_Tester is new Encode_String1_Pkg
|
|
(C => Wide_Wide_Character,
|
|
S => Wide_Wide_String,
|
|
Encode => Encoder.Encode_Wide_Wide_String);
|
|
begin
|
|
WS_Tester (High_WS);
|
|
WS_Tester (Low_WS);
|
|
|
|
WWS_Tester (High_WWS);
|
|
WWS_Tester (Low_WWS);
|
|
end Test_Method;
|
|
|
|
-- Start of processing for Main
|
|
|
|
begin
|
|
for Method in WC_Encoding_Method'Range loop
|
|
Test_Method (Method);
|
|
end loop;
|
|
end;
|