-- 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.Object.Ref is access;
with type MSSyst.Type_k.Ref is access;
with type MSSyst.String.Ref is access;
with MSSyst.ValueType;
package MSSyst.TimeSpan 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 new_TimeSpan(
      ticks : Long_Long_Integer) return Valuetype;
   function new_TimeSpan(
      hours : Integer;
      minutes : Integer;
      seconds : Integer) return Valuetype;
   function new_TimeSpan(
      days : Integer;
      hours : Integer;
      minutes : Integer;
      seconds : Integer) return Valuetype;
   function new_TimeSpan(
      days : Integer;
      hours : Integer;
      minutes : Integer;
      seconds : Integer;
      milliseconds : Integer) return Valuetype;
   function Add(
      This : Valuetype;
      ts : MSSyst.TimeSpan.Valuetype) return MSSyst.TimeSpan.Valuetype;
   function Compare(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return Integer;
   function CompareTo(
      This : Valuetype;
      value : MSSyst.Object.Ref) return Integer;
   function Duration_k(
      This : Valuetype) return MSSyst.TimeSpan.Valuetype;
   function Equals(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return Standard.Boolean;
   function Equals(
      This : Valuetype;
      value : MSSyst.Object.Ref) return Standard.Boolean;
   function FromDays(
      value : Long_Float) return MSSyst.TimeSpan.Valuetype;
   function FromHours(
      value : Long_Float) return MSSyst.TimeSpan.Valuetype;
   function FromMilliseconds(
      value : Long_Float) return MSSyst.TimeSpan.Valuetype;
   function FromMinutes(
      value : Long_Float) return MSSyst.TimeSpan.Valuetype;
   function FromSeconds(
      value : Long_Float) return MSSyst.TimeSpan.Valuetype;
   function FromTicks(
      value : Long_Long_Integer) return MSSyst.TimeSpan.Valuetype;
   function get_Days(
      This : Valuetype) return Integer;
   function get_Hours(
      This : Valuetype) return Integer;
   function get_Milliseconds(
      This : Valuetype) return Integer;
   function get_Minutes(
      This : Valuetype) return Integer;
   function get_Seconds(
      This : Valuetype) return Integer;
   function get_Ticks(
      This : Valuetype) return Long_Long_Integer;
   function get_TotalDays(
      This : Valuetype) return Long_Float;
   function get_TotalHours(
      This : Valuetype) return Long_Float;
   function get_TotalMilliseconds(
      This : Valuetype) return Long_Float;
   function get_TotalMinutes(
      This : Valuetype) return Long_Float;
   function get_TotalSeconds(
      This : Valuetype) return Long_Float;
   function GetHashCode(
      This : Valuetype) return Integer;
   function Negate(
      This : Valuetype) return MSSyst.TimeSpan.Valuetype;
   function op_Addition(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return MSSyst.TimeSpan.Valuetype;
   function op_Equality(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return Standard.Boolean;
   function op_GreaterThan(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return Standard.Boolean;
   function op_GreaterThanOrEqual(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return Standard.Boolean;
   function op_Inequality(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return Standard.Boolean;
   function op_LessThan(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return Standard.Boolean;
   function op_LessThanOrEqual(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return Standard.Boolean;
   function op_Subtraction(
      t1 : MSSyst.TimeSpan.Valuetype;
      t2 : MSSyst.TimeSpan.Valuetype) return MSSyst.TimeSpan.Valuetype;
   function op_UnaryNegation(
      t : MSSyst.TimeSpan.Valuetype) return MSSyst.TimeSpan.Valuetype;
   function op_UnaryPlus(
      t : MSSyst.TimeSpan.Valuetype) return MSSyst.TimeSpan.Valuetype;
   function Parse(
      s : MSSyst.String.Ref) return MSSyst.TimeSpan.Valuetype;
   function Subtract(
      This : Valuetype;
      ts : MSSyst.TimeSpan.Valuetype) return MSSyst.TimeSpan.Valuetype;
   function ToString(
      This : Valuetype) return MSSyst.String.Ref;
private
   pragma MSIL_Constructor(new_TimeSpan);
   pragma Import(MSIL,Add,"Add");
   pragma Import(MSIL,Compare,"Compare");
   pragma Import(MSIL,CompareTo,"CompareTo");
   pragma Import(MSIL,Duration_k,"Duration");
   pragma Import(MSIL,Equals,"Equals");
   pragma Import(MSIL,FromDays,"FromDays");
   pragma Import(MSIL,FromHours,"FromHours");
   pragma Import(MSIL,FromMilliseconds,"FromMilliseconds");
   pragma Import(MSIL,FromMinutes,"FromMinutes");
   pragma Import(MSIL,FromSeconds,"FromSeconds");
   pragma Import(MSIL,FromTicks,"FromTicks");
   pragma Import(MSIL,get_Days,"get_Days");
   pragma Import(MSIL,get_Hours,"get_Hours");
   pragma Import(MSIL,get_Milliseconds,"get_Milliseconds");
   pragma Import(MSIL,get_Minutes,"get_Minutes");
   pragma Import(MSIL,get_Seconds,"get_Seconds");
   pragma Import(MSIL,get_Ticks,"get_Ticks");
   pragma Import(MSIL,get_TotalDays,"get_TotalDays");
   pragma Import(MSIL,get_TotalHours,"get_TotalHours");
   pragma Import(MSIL,get_TotalMilliseconds,"get_TotalMilliseconds");
   pragma Import(MSIL,get_TotalMinutes,"get_TotalMinutes");
   pragma Import(MSIL,get_TotalSeconds,"get_TotalSeconds");
   pragma Import(MSIL,GetHashCode,"GetHashCode");
   pragma Import(MSIL,Negate,"Negate");
   pragma Import(MSIL,op_Addition,"op_Addition");
   pragma Import(MSIL,op_Equality,"op_Equality");
   pragma Import(MSIL,op_GreaterThan,"op_GreaterThan");
   pragma Import(MSIL,op_GreaterThanOrEqual,"op_GreaterThanOrEqual");
   pragma Import(MSIL,op_Inequality,"op_Inequality");
   pragma Import(MSIL,op_LessThan,"op_LessThan");
   pragma Import(MSIL,op_LessThanOrEqual,"op_LessThanOrEqual");
   pragma Import(MSIL,op_Subtraction,"op_Subtraction");
   pragma Import(MSIL,op_UnaryNegation,"op_UnaryNegation");
   pragma Import(MSIL,op_UnaryPlus,"op_UnaryPlus");
   pragma Import(MSIL,Parse,"Parse");
   pragma Import(MSIL,Subtract,"Subtract");
   pragma Import(MSIL,ToString,"ToString");
end MSSyst.TimeSpan;
pragma Extensions_Allowed(Off);
pragma Import(MSIL,MSSyst.TimeSpan,
   ".ver 1.0.5000.0 .publickeytoken=( 96 9d b8 05 3d 33 22 ac )",
   "[mscorlib]System.TimeSpan");
