method ctyp : ctyp -> ctyp =
function
| TyNil _x -> let _x = o#loc _x in TyNil _x
| TyAli (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyAli (_x, _x_i1, _x_i2)
| TyAny _x -> let _x = o#loc _x in TyAny _x
| TyApp (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyApp (_x, _x_i1, _x_i2)
| TyArr (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyArr (_x, _x_i1, _x_i2)
| TyCls (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ident _x_i1 in TyCls (_x, _x_i1)
| TyLab (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#string _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyLab (_x, _x_i1, _x_i2)
| TyId (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ident _x_i1 in TyId (_x, _x_i1)
| TyMan (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyMan (_x, _x_i1, _x_i2)
| TyDcl (_x, _x_i1, _x_i2, _x_i3, _x_i4) ->
let _x = o#loc _x in
let _x_i1 = o#string _x_i1 in
let _x_i2 = o#list (fun o -> o#ctyp) _x_i2 in
let _x_i3 = o#ctyp _x_i3 in
let _x_i4 =
o#list
(fun o (_x, _x_i1) ->
let _x = o#ctyp _x in
let _x_i1 = o#ctyp _x_i1 in (_x, _x_i1))
_x_i4
in TyDcl (_x, _x_i1, _x_i2, _x_i3, _x_i4)
| TyObj (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#row_var_flag _x_i2
in TyObj (_x, _x_i1, _x_i2)
| TyOlb (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#string _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyOlb (_x, _x_i1, _x_i2)
| TyPol (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyPol (_x, _x_i1, _x_i2)
| TyQuo (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#string _x_i1 in TyQuo (_x, _x_i1)
| TyQuP (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#string _x_i1 in TyQuP (_x, _x_i1)
| TyQuM (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#string _x_i1 in TyQuM (_x, _x_i1)
| TyVrn (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#string _x_i1 in TyVrn (_x, _x_i1)
| TyRec (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in TyRec (_x, _x_i1)
| TyCol (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyCol (_x, _x_i1, _x_i2)
| TySem (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TySem (_x, _x_i1, _x_i2)
| TyCom (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyCom (_x, _x_i1, _x_i2)
| TySum (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in TySum (_x, _x_i1)
| TyOf (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyOf (_x, _x_i1, _x_i2)
| TyAnd (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyAnd (_x, _x_i1, _x_i2)
| TyOr (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyOr (_x, _x_i1, _x_i2)
| TyPrv (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in TyPrv (_x, _x_i1)
| TyMut (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in TyMut (_x, _x_i1)
| TyTup (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in TyTup (_x, _x_i1)
| TySta (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TySta (_x, _x_i1, _x_i2)
| TyVrnEq (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in TyVrnEq (_x, _x_i1)
| TyVrnSup (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in TyVrnSup (_x, _x_i1)
| TyVrnInf (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in TyVrnInf (_x, _x_i1)
| TyVrnInfSup (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2
in TyVrnInfSup (_x, _x_i1, _x_i2)
| TyAmp (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyAmp (_x, _x_i1, _x_i2)
| TyOfAmp (_x, _x_i1, _x_i2) ->
let _x = o#loc _x in
let _x_i1 = o#ctyp _x_i1 in
let _x_i2 = o#ctyp _x_i2 in TyOfAmp (_x, _x_i1, _x_i2)
| TyPkg (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#module_type _x_i1 in TyPkg (_x, _x_i1)
| TyAnt (_x, _x_i1) ->
let _x = o#loc _x in
let _x_i1 = o#string _x_i1 in TyAnt (_x, _x_i1)