let pp_class_sections sections depth =
Format.sprintf "@[<v 3>@,{@[<v 2>@,privates = %s,@,protects = %s,@,publics = %s,@,refines = %s,@,mains = %s@]@,}@]"
(pp_str_list (pp_member_def (depth+1)) sections.privates depth)
(pp_str_list (pp_member_def (depth+1)) sections.protects depth)
(pp_str_list (pp_member_def (depth+1)) sections.publics depth)
(pp_str_list (pp_func_def (depth+1)) sections.refines depth)
(pp_str_list (pp_func_def (depth+1)) sections.mains depth)