]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/ng_refiner/nRstatus.ml
The left parameters coming from the constructor types have been refined in a
[helm.git] / helm / software / components / ng_refiner / nRstatus.ml
index 5ef83ec3c2c10ec578e3b0c5c603a94469d50278..68fdf4f50f07663efdee6d131280f50f323f2416 100644 (file)
 
 (* $Id: nCicRefiner.ml 9802 2009-05-25 15:39:26Z tassi $ *)
 
-class type ctstatus =
- object ('self)
-  inherit NCicUnifHint.status
-  inherit NCicCoercion.status
-  inherit NCicLibrary.status
-  method set_rstatus : ctstatus -> 'self
+class type g_status =
+ object
+  inherit NCicCoercion.g_status
+  inherit NCicLibrary.g_status
  end
 
-class status : ctstatus =
+class status =
  object (self)
-  inherit NCicUnifHint.status
   inherit NCicCoercion.status
   inherit NCicLibrary.status
-  method set_rstatus o =
-   ((self#set_unifhint_status (o :> NCicUnifHint.status))
-         #set_coercion_status (o :> NCicCoercion.status))
-         #set_library_status  (o :> NCicLibrary.status)
+  method set_rstatus : 'status. #g_status as 'status -> 'self
+   = fun o -> (self#set_coercion_status o)#set_library_status o
  end
 
 type sstatus = status
@@ -38,26 +33,24 @@ module Serializer =
 
   let require ~baseuri status = 
    let rstatus = require ~baseuri (status : #status :> status) in
-   let status = status#set_uhint_db (rstatus#uhint_db) in
    let status = status#set_coerc_db (rstatus#coerc_db) in
+   let status = status#set_uhint_db (rstatus#uhint_db) in
    let status = status#set_timestamp (rstatus#timestamp) in
     status 
  end
 
-class type ctdumpable_status =
- object ('self)
-  inherit status
+class type g_dumpable_status =
+ object
+  inherit g_status
   method dump: Serializer.obj list
-  method set_dump: Serializer.obj list -> 'self
-  method set_dumpable_status: ctdumpable_status -> 'self
  end
 
-class dumpable_status : ctdumpable_status =
- object
+class dumpable_status =
+ object(self)
   inherit status
   val dump = ([] : Serializer.obj list)
   method dump = dump
   method set_dump v = {< dump = v >}
-  method set_dumpable_status o =
-   {< dump = o#dump >}#set_rstatus (o :> status)
+  method set_dumpable_status : 'status. #g_dumpable_status as 'status -> 'self
+   = fun o -> (self#set_dump o#dump)#set_rstatus o
  end