-- Autogenerated by MSIL2Ada v. 2
-- By: Martin C. Carlisle
--     Department of Computer Science
--     US Air Force Academy
--     carlislem@acm.org
pragma Extensions_Allowed(On);
with MSSyst.Object;
with MSIL_Types;
use MSIL_Types;
with type MSSyst.IComparable.Ref is access;
with type MSSyst.IConvertible.Ref is access;
with type MSSyst.Object.Ref is access;
with type MSSyst.String.Ref is access;
with type MSSyst.Type_k.Ref is access;
with MSSyst.TypeCode;
with MSSyst.Globalization.UnicodeCategory;
with type MSSyst.Globalization.CultureInfo.Ref is access;
with type MSSyst.IFormatProvider.Ref is access;
with MSSyst.ValueType;
package MSSyst.Char is
   type ValueType is new MSSyst.ValueType.Typ with null record;
   type ValueType_Arr is array (Natural range <>) of ValueType; -- start at 0
   type ValueType_Array is access all ValueType_Arr;
   type ValueType_addrof is access all ValueType;
   type ValueType_array_addrof is access all ValueType_Array;
   function CompareTo(
      This : Valuetype;
      value : MSSyst.Object.Ref) return Integer;
   function Equals(
      This : Valuetype;
      obj : MSSyst.Object.Ref) return Standard.Boolean;
   function GetHashCode(
      This : Valuetype) return Integer;
   function GetNumericValue(
      s : MSSyst.String.Ref;
      index : Integer) return Long_Float;
   function GetNumericValue(
      c : Wide_Character) return Long_Float;
   function GetTypeCode(
      This : Valuetype) return MSSyst.TypeCode.Valuetype;
   function GetUnicodeCategory(
      c : Wide_Character) return MSSyst.Globalization.UnicodeCategory.Valuetype;
   function GetUnicodeCategory(
      s : MSSyst.String.Ref;
      index : Integer) return MSSyst.Globalization.UnicodeCategory.Valuetype;
   function IsControl(
      c : Wide_Character) return Standard.Boolean;
   function IsControl(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsDigit(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsDigit(
      c : Wide_Character) return Standard.Boolean;
   function IsLetter(
      c : Wide_Character) return Standard.Boolean;
   function IsLetter(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsLetterOrDigit(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsLetterOrDigit(
      c : Wide_Character) return Standard.Boolean;
   function IsLower(
      c : Wide_Character) return Standard.Boolean;
   function IsLower(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsNumber(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsNumber(
      c : Wide_Character) return Standard.Boolean;
   function IsPunctuation(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsPunctuation(
      c : Wide_Character) return Standard.Boolean;
   function IsSeparator(
      c : Wide_Character) return Standard.Boolean;
   function IsSeparator(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsSurrogate(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsSurrogate(
      c : Wide_Character) return Standard.Boolean;
   function IsSymbol(
      c : Wide_Character) return Standard.Boolean;
   function IsSymbol(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsUpper(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsUpper(
      c : Wide_Character) return Standard.Boolean;
   function IsWhiteSpace(
      s : MSSyst.String.Ref;
      index : Integer) return Standard.Boolean;
   function IsWhiteSpace(
      c : Wide_Character) return Standard.Boolean;
   function Parse(
      s : MSSyst.String.Ref) return Wide_Character;
   function ToLower(
      c : Wide_Character;
      culture : MSSyst.Globalization.CultureInfo.Ref) return Wide_Character;
   function ToLower(
      c : Wide_Character) return Wide_Character;
   function ToString(
      c : Wide_Character) return MSSyst.String.Ref;
   function ToString(
      This : Valuetype) return MSSyst.String.Ref;
   function ToString(
      This : Valuetype;
      provider : MSSyst.IFormatProvider.Ref) return MSSyst.String.Ref;
   function ToUpper(
      c : Wide_Character;
      culture : MSSyst.Globalization.CultureInfo.Ref) return Wide_Character;
   function ToUpper(
      c : Wide_Character) return Wide_Character;
private
   pragma Import(MSIL,CompareTo,"CompareTo");
   pragma Import(MSIL,Equals,"Equals");
   pragma Import(MSIL,GetHashCode,"GetHashCode");
   pragma Import(MSIL,GetNumericValue,"GetNumericValue");
   pragma Import(MSIL,GetTypeCode,"GetTypeCode");
   pragma Import(MSIL,GetUnicodeCategory,"GetUnicodeCategory");
   pragma Import(MSIL,IsControl,"IsControl");
   pragma Import(MSIL,IsDigit,"IsDigit");
   pragma Import(MSIL,IsLetter,"IsLetter");
   pragma Import(MSIL,IsLetterOrDigit,"IsLetterOrDigit");
   pragma Import(MSIL,IsLower,"IsLower");
   pragma Import(MSIL,IsNumber,"IsNumber");
   pragma Import(MSIL,IsPunctuation,"IsPunctuation");
   pragma Import(MSIL,IsSeparator,"IsSeparator");
   pragma Import(MSIL,IsSurrogate,"IsSurrogate");
   pragma Import(MSIL,IsSymbol,"IsSymbol");
   pragma Import(MSIL,IsUpper,"IsUpper");
   pragma Import(MSIL,IsWhiteSpace,"IsWhiteSpace");
   pragma Import(MSIL,Parse,"Parse");
   pragma Import(MSIL,ToLower,"ToLower");
   pragma Import(MSIL,ToString,"ToString");
   pragma Import(MSIL,ToUpper,"ToUpper");
end MSSyst.Char;
pragma Extensions_Allowed(Off);
pragma Import(MSIL,MSSyst.Char,
   ".ver 1.0.5000.0 .publickeytoken=( 96 9d b8 05 3d 33 22 ac )",
   "[mscorlib]System.Char");
