src/HOL/Statespace/state_fun.ML
changeset 31784 bd3486c57ba3
parent 31723 f5cafe803b55
child 32010 cb1a1c94b4cd
equal deleted inserted replaced
31783:cfbe9609ceb1 31784:bd3486c57ba3
   338 
   338 
   339 fun mkName (Type (T,args)) = concat (map mkName args) ^ mkUpper (Long_Name.base_name T)
   339 fun mkName (Type (T,args)) = concat (map mkName args) ^ mkUpper (Long_Name.base_name T)
   340   | mkName (TFree (x,_)) = mkUpper (Long_Name.base_name x)
   340   | mkName (TFree (x,_)) = mkUpper (Long_Name.base_name x)
   341   | mkName (TVar ((x,_),_)) = mkUpper (Long_Name.base_name x);
   341   | mkName (TVar ((x,_),_)) = mkUpper (Long_Name.base_name x);
   342 
   342 
   343 fun is_datatype thy n = is_some (Symtab.lookup (Datatype.get_datatypes thy) n);
   343 fun is_datatype thy = is_some o Datatype.get_info thy;
   344 
   344 
   345 fun mk_map "List.list" = Syntax.const "List.map"
   345 fun mk_map "List.list" = Syntax.const "List.map"
   346   | mk_map n = Syntax.const ("StateFun.map_" ^ Long_Name.base_name n);
   346   | mk_map n = Syntax.const ("StateFun.map_" ^ Long_Name.base_name n);
   347 
   347 
   348 fun gen_constr_destr comp prfx thy (Type (T,[])) = 
   348 fun gen_constr_destr comp prfx thy (Type (T,[])) =