Browse Source

added class/field abstract info to genxml (#9720)

Aleksandr Kuzmenko 4 years ago
parent
commit
e0634f6c1a
1 changed files with 3 additions and 1 deletions
  1. 3 1
      src/codegen/genxml.ml

+ 3 - 1
src/codegen/genxml.ml

@@ -173,6 +173,7 @@ and gen_field att f =
 	in
 	let att = if has_class_field_flag f CfPublic then ("public","1") :: att else att in
 	let att = if has_class_field_flag f CfFinal then ("final","1") :: att else att in
+	let att = if has_class_field_flag f CfAbstract then ("abstract","1") :: att else att in
 	node (field_name f) att (gen_type ~values:(Some values) f.cf_type :: gen_meta f.cf_meta @ gen_doc_opt f.cf_doc @ overloads)
 
 let gen_constr e =
@@ -237,7 +238,8 @@ let rec gen_type_decl com pos t =
 		let ext = (if (has_class_flag c CExtern) then [("extern","1")] else []) in
 		let interf = (if (has_class_flag c CInterface) then [("interface","1")] else []) in
 		let final = (if has_class_flag c CFinal then [("final","1")] else []) in
-		node "class" (gen_type_params pos c.cl_private (tpath t) c.cl_params c.cl_pos m @ ext @ interf @ final) (tree @ stats @ fields @ constr @ doc @ meta)
+		let abstract = (if has_class_flag c CAbstract then [("abstract","1")] else []) in
+		node "class" (gen_type_params pos c.cl_private (tpath t) c.cl_params c.cl_pos m @ ext @ interf @ final @ abstract) (tree @ stats @ fields @ constr @ doc @ meta)
 	| TEnumDecl e ->
 		let doc = gen_doc_opt e.e_doc in
 		let meta = gen_meta e.e_meta in