Skip to content
This repository was archived by the owner on Feb 19, 2025. It is now read-only.

Commit 4cf20b5

Browse files
authored
Merge pull request #115 from lindig/CP-24819
Revert "CP-24819 Enum now has 3 arguments"
2 parents f176a76 + ffd35f4 commit 4cf20b5

File tree

5 files changed

+43
-43
lines changed

5 files changed

+43
-43
lines changed

c/gen_c_binding.ml

+22-22
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ and gen_class f g clas targetdir =
152152

153153

154154
and gen_enum f g targetdir = function
155-
| Enum(name, _, contents) ->
155+
| Enum(name, contents) ->
156156
if not (List.mem name !all_headers) then
157157
all_headers := name::!all_headers;
158158
let out_chan = open_out (Filename.concat targetdir (g name))
@@ -502,7 +502,7 @@ and abstract_result_handling needed classname msg_name param_count = function
502502
return session->ok;
503503
" record_tn (initialiser_of_ty (Record n)) call
504504

505-
| Enum(e, _, _) ->
505+
| Enum(e, _) ->
506506
sprintf
507507
"%s
508508
%s
@@ -545,7 +545,7 @@ and abstract_result_type typ =
545545

546546
and abstract_type record = function
547547
| String -> "abstract_type_string"
548-
| Enum(n, _, _) ->
548+
| Enum(n, _) ->
549549
sprintf "%s_abstract_type_" (typename n)
550550
| Ref _ ->
551551
if record then
@@ -556,7 +556,7 @@ and abstract_type record = function
556556
| Float -> "abstract_type_float"
557557
| Bool -> "abstract_type_bool"
558558
| DateTime -> "abstract_type_datetime"
559-
| Set (Enum(n, _, _)) ->
559+
| Set (Enum(n, _)) ->
560560
sprintf "%s_set_abstract_type_" (typename n)
561561
| Set (Record "event") ->
562562
"xen_event_record_set_abstract_type_"
@@ -569,8 +569,8 @@ and abstract_type record = function
569569
sprintf "abstract_type_%s_ref_map" (name_of_ty l)
570570
else
571571
sprintf "abstract_type_%s_string_map" (name_of_ty l)
572-
| Map((Enum(_,_,_) as l), r) -> (mapname l r) ^ "_abstract_type_"
573-
| Map(l, (Enum(_,_,_) as r)) -> (mapname l r) ^ "_abstract_type_"
572+
| Map((Enum(_,_) as l), r) -> (mapname l r) ^ "_abstract_type_"
573+
| Map(l, (Enum(_,_) as r)) -> (mapname l r) ^ "_abstract_type_"
574574
| Map(l, r) -> sprintf "abstract_type_" ^ (mapname l r)
575575

576576
| Record n -> sprintf "%s_abstract_type_" (record_typename n)
@@ -923,8 +923,8 @@ void
923923

924924
begin
925925
match l, r with
926-
(Enum(_,_,_), _) -> gen_enum_map_abstract_type print name l r
927-
| (_, Enum(_,_,_)) -> gen_enum_map_abstract_type print name l r
926+
(Enum(_, _), _) -> gen_enum_map_abstract_type print name l r
927+
| (_, Enum(_, _)) -> gen_enum_map_abstract_type print name l r
928928
| _ -> ()
929929
end
930930

@@ -968,7 +968,7 @@ extern const abstract_type %s_abstract_type_;
968968

969969

970970
and hash_include_enum = function
971-
Enum(x,_,_) ->
971+
Enum(x, _) ->
972972
"\n" ^ hash_include x
973973
| _ ->
974974
""
@@ -1220,13 +1220,13 @@ and find_needed'' needed = function
12201220
| Float
12211221
| Bool
12221222
| DateTime -> ()
1223-
| Enum (n, _, _) ->
1223+
| Enum (n, _) ->
12241224
needed := StringSet.add (n ^ "_internal") !needed
12251225
| Ref n ->
12261226
needed := StringSet.add n !needed
12271227
| Set(Ref n) ->
12281228
needed := StringSet.add n !needed
1229-
| Set(Enum (e, _, _)) ->
1229+
| Set(Enum (e, _)) ->
12301230
needed := StringSet.add e !needed;
12311231
needed := StringSet.add (e ^ "_internal") !needed
12321232
| Set(Record "event") ->
@@ -1251,10 +1251,10 @@ and free_impl val_name record = function
12511251
| Float
12521252
| Bool
12531253
| DateTime
1254-
| Enum (_, _, _) -> ""
1254+
| Enum (_, _) -> ""
12551255
| Ref n -> sprintf "%s_free(%s);" (if record then record_opt_typename n else typename n) val_name
12561256
| Set(Ref n) -> sprintf "%s_opt_set_free(%s);" (record_typename n) val_name
1257-
| Set(Enum (e,_,_))-> sprintf "%s_set_free(%s);" (typename e) val_name
1257+
| Set(Enum (e, _)) -> sprintf "%s_set_free(%s);" (typename e) val_name
12581258
| Set(String) -> sprintf "xen_string_set_free(%s);" val_name
12591259
| Map(l, r) -> let n = mapname l r in
12601260
sprintf "%s_free(%s);" (typename n) val_name
@@ -1264,14 +1264,14 @@ and free_impl val_name record = function
12641264

12651265

12661266
and add_enum_internal needed = function
1267-
| Enum(x,_,_) -> StringSet.add (x ^ "_internal") needed
1268-
| _ -> needed
1267+
| Enum(x, _) -> StringSet.add (x ^ "_internal") needed
1268+
| _ -> needed
12691269

12701270

12711271
and add_enum_map_internal needed l r =
12721272
match (l, r) with
1273-
(Enum(_,_,_), _) -> StringSet.add ((mapname l r) ^ "_internal") needed
1274-
| (_, Enum(_,_,_)) -> StringSet.add ((mapname l r) ^ "_internal") needed
1273+
(Enum(_, _), _) -> StringSet.add ((mapname l r) ^ "_internal") needed
1274+
| (_, Enum(_, _)) -> StringSet.add ((mapname l r) ^ "_internal") needed
12751275
| _ -> needed
12761276

12771277

@@ -1288,7 +1288,7 @@ and c_type_of_ty needed record = function
12881288
sprintf "struct %s *" (record_opt_typename name)
12891289
else
12901290
sprintf "%s " (typename name)
1291-
| Enum(name, _, cs) as x ->
1291+
| Enum(name, cs) as x ->
12921292
needed := StringSet.add name !needed;
12931293
enums := TypeSet.add x !enums;
12941294
c_type_of_enum name
@@ -1298,7 +1298,7 @@ and c_type_of_ty needed record = function
12981298
sprintf "struct %s_set *" (record_opt_typename name)
12991299
else
13001300
sprintf "struct %s_set *" (typename name)
1301-
| Set (Enum (e,_,_) as x) ->
1301+
| Set (Enum (e, _) as x) ->
13021302
let enum_typename = typename e in
13031303
needed := StringSet.add e !needed;
13041304
enums := TypeSet.add x !enums;
@@ -1317,8 +1317,8 @@ and c_type_of_ty needed record = function
13171317
maps := TypeSet.add x !maps;
13181318
begin
13191319
match (l, r) with
1320-
(Enum(_,_,_), _) -> enum_maps := TypeSet.add x !enum_maps
1321-
| (_, Enum(_,_,_)) -> enum_maps := TypeSet.add x !enum_maps
1320+
(Enum(_, _), _) -> enum_maps := TypeSet.add x !enum_maps
1321+
| (_, Enum(_, _)) -> enum_maps := TypeSet.add x !enum_maps
13221322
| _ -> ()
13231323
end;
13241324
sprintf "%s *" (typename n)
@@ -1351,7 +1351,7 @@ and name_of_ty = function
13511351
| Float -> "float"
13521352
| Bool -> "bool"
13531353
| DateTime -> "datetime"
1354-
| Enum(x,_,_) -> x
1354+
| Enum(x, _) -> x
13551355
| Set(x) -> sprintf "%s_set" (name_of_ty x)
13561356
| Ref(x) -> x
13571357
| Map(l,r) -> sprintf "%s_%s_map" (name_of_ty l) (name_of_ty r)

csharp/gen_csharp_binding.ml

+11-11
Original file line numberDiff line numberDiff line change
@@ -957,7 +957,7 @@ and gen_proxy_field out_chan content =
957957

958958

959959
and gen_enum = function
960-
| Enum(name, _, contents) ->
960+
| Enum(name, contents) ->
961961
if not (List.mem name !api_members) then
962962
api_members := name::!api_members;
963963
let out_chan = open_out (Filename.concat destdir (name ^ ".cs"))
@@ -1157,11 +1157,11 @@ and exposed_type = function
11571157
| DateTime -> "DateTime"
11581158
| Ref name -> sprintf "XenRef<%s>" (exposed_class_name name)
11591159
| Set(Ref name) -> sprintf "List<XenRef<%s>>" (exposed_class_name name)
1160-
| Set(Enum(name,_,_) as x)-> enums := TypeSet.add x !enums;
1160+
| Set(Enum(name, _) as x) -> enums := TypeSet.add x !enums;
11611161
sprintf "List<%s>" name
11621162
| Set(Int) -> "long[]"
11631163
| Set(String) -> "string[]"
1164-
| Enum(name,_,_) as x -> enums := TypeSet.add x !enums; name
1164+
| Enum(name, _) as x -> enums := TypeSet.add x !enums; name
11651165
| Map(u, v) -> sprintf "Dictionary<%s, %s>" (exposed_type u)
11661166
(exposed_type v)
11671167
| Record name -> exposed_class_name name
@@ -1196,7 +1196,7 @@ and convert_from_proxy thing ty = (*function*)
11961196
| Float -> simple_convert_from_proxy thing ty
11971197
| Int -> sprintf "%s == null ? 0 : %s" thing (simple_convert_from_proxy thing ty)
11981198
| Set(String) -> sprintf "%s == null ? new string[] {} : %s" thing (simple_convert_from_proxy thing ty)
1199-
| Enum(name,_,_) -> sprintf "%s == null ? (%s) 0 : %s" thing name (simple_convert_from_proxy thing ty)
1199+
| Enum(name, _) -> sprintf "%s == null ? (%s) 0 : %s" thing name (simple_convert_from_proxy thing ty)
12001200
| _ -> sprintf "%s == null ? null : %s" thing (simple_convert_from_proxy thing ty)
12011201

12021202
and convert_from_proxy_never_null_string thing ty = (* for when 'thing' is never null and is a string - i.e. it is a key in a hashtable *)
@@ -1217,8 +1217,8 @@ and convert_from_hashtable fname ty =
12171217
| String -> sprintf "Marshalling.ParseString(table, %s)" field
12181218
| Set(String) -> sprintf "Marshalling.ParseStringArray(table, %s)" field
12191219
| Set(Ref name) -> sprintf "Marshalling.ParseSetRef<%s>(table, %s)" (exposed_class_name name) field
1220-
| Set(Enum(name,_,_)) -> sprintf "Helper.StringArrayToEnumList<%s>(Marshalling.ParseStringArray(table, %s))" name field
1221-
| Enum(name,_,_) -> sprintf "(%s)Helper.EnumParseDefault(typeof(%s), Marshalling.ParseString(table, %s))" name name field
1220+
| Set(Enum(name, _)) -> sprintf "Helper.StringArrayToEnumList<%s>(Marshalling.ParseStringArray(table, %s))" name field
1221+
| Enum(name, _) -> sprintf "(%s)Helper.EnumParseDefault(typeof(%s), Marshalling.ParseString(table, %s))" name name field
12221222
| Map(Ref name, Record _) -> sprintf "Marshalling.ParseMapRefRecord<%s, Proxy_%s>(table, %s)" (exposed_class_name name) (exposed_class_name name) field
12231223
| Map(u, v) as x ->
12241224
maps := TypeSet.add x !maps;
@@ -1246,8 +1246,8 @@ and simple_convert_from_proxy thing ty =
12461246
| String -> sprintf "(string)%s" thing
12471247
| Set(String) -> sprintf "(string [])%s" thing
12481248
| Set(Ref name) -> sprintf "XenRef<%s>.Create(%s)" (exposed_class_name name) thing
1249-
| Set(Enum(name,_,_)) -> sprintf "Helper.StringArrayToEnumList<%s>(%s)" name thing
1250-
| Enum(name,_,_) -> sprintf "(%s)Helper.EnumParseDefault(typeof(%s), (string)%s)" name name thing
1249+
| Set(Enum(name, _)) -> sprintf "Helper.StringArrayToEnumList<%s>(%s)" name thing
1250+
| Enum(name, _) -> sprintf "(%s)Helper.EnumParseDefault(typeof(%s), (string)%s)" name name thing
12511251
| Map(Ref name, Record _) -> sprintf "XenRef<%s>.Create<Proxy_%s>(%s)" (exposed_class_name name) (exposed_class_name name) thing
12521252
| Map(u, v) as x ->
12531253
maps := TypeSet.add x !maps;
@@ -1272,11 +1272,11 @@ and convert_to_proxy thing ty = (*function*)
12721272
| Float -> thing
12731273
| Ref _ -> sprintf "%s ?? \"\"" thing
12741274
| String -> sprintf "%s ?? \"\"" thing
1275-
| Enum (name,_,_) -> sprintf "%s_helper.ToString(%s)" name thing
1276-
| Set (Ref name) -> sprintf "(%s != null) ? Helper.RefListToStringArray(%s) : new string[] {}" thing thing
1275+
| Enum (name,_) -> sprintf "%s_helper.ToString(%s)" name thing
1276+
| Set (Ref name) -> sprintf "(%s != null) ? Helper.RefListToStringArray(%s) : new string[] {}" thing thing
12771277
| Set(String) -> thing
12781278
| Set (Int) -> sprintf "(%s != null) ? Helper.LongArrayToStringArray(%s) : new string[] {}" thing thing
1279-
| Set(Enum(_,_,_)) -> sprintf "(%s != null) ? Helper.ObjectListToStringArray(%s) : new string[] {}" thing thing
1279+
| Set(Enum(_, _)) -> sprintf "(%s != null) ? Helper.ObjectListToStringArray(%s) : new string[] {}" thing thing
12801280
| Map(u, v) as x -> maps := TypeSet.add x !maps;
12811281
sprintf "%s(%s)"
12821282
(sanitise_function_name (sprintf "Maps.convert_to_proxy_%s_%s" (exposed_type_as_literal u) (exposed_type_as_literal v))) thing

java/main.ml

+6-6
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ let rec get_java_type ty =
171171
| Float -> "Double"
172172
| Bool -> "Boolean"
173173
| DateTime -> "Date"
174-
| Enum(name,_,ls)-> Hashtbl.replace enums name ls; sprintf "Types.%s" (class_case name)
174+
| Enum(name,ls) -> Hashtbl.replace enums name ls; sprintf "Types.%s" (class_case name)
175175
| Set(t1) -> sprintf "Set<%s>" (get_java_type t1)
176176
| Map(t1, t2) -> sprintf "Map<%s, %s>" (get_java_type t1) (get_java_type t2)
177177
| Ref(ty) -> class_case ty (* We want to hide all refs *)
@@ -180,7 +180,7 @@ let rec get_java_type ty =
180180

181181
(*We'd like the list of XenAPI objects to appear as an enumeration so we can*)
182182
(* switch on them, so add it using this mechanism*)
183-
let switch_enum = (Enum ("XenAPIObjects", false,(List.map (fun x -> (x.name,x.description )) classes)));;
183+
let switch_enum = (Enum ("XenAPIObjects", (List.map (fun x -> (x.name,x.description )) classes)));;
184184
let _ = (get_java_type switch_enum);;
185185

186186
(*Helper function for get_marshall_function*)
@@ -190,7 +190,7 @@ let rec get_marshall_function_rec = function
190190
| Float -> "Double"
191191
| Bool -> "Boolean"
192192
| DateTime -> "Date"
193-
| Enum(name,_,ls)-> class_case name
193+
| Enum(name,ls) -> class_case name
194194
| Set(t1) -> sprintf "SetOf%s" (get_marshall_function_rec t1)
195195
| Map(t1, t2) -> sprintf "MapOf%s%s" (get_marshall_function_rec t1) (get_marshall_function_rec t2)
196196
| Ref(ty) -> class_case ty (* We want to hide all refs *)
@@ -403,8 +403,8 @@ let field_default = function
403403
| Float -> "0.0"
404404
| Bool -> "false"
405405
| DateTime -> "new Date(0)"
406-
| Enum("vif_locking_mode",_,_) -> "Types.VifLockingMode.NETWORK_DEFAULT" (* XOP-372 *)
407-
| Enum(name,_,_)-> sprintf "Types.%s.UNRECOGNIZED" (class_case name)
406+
| Enum("vif_locking_mode", _) -> "Types.VifLockingMode.NETWORK_DEFAULT" (* XOP-372 *)
407+
| Enum(name, _) -> sprintf "Types.%s.UNRECOGNIZED" (class_case name)
408408
| Set(t1) -> sprintf "new LinkedHashSet<%s>()" (get_java_type t1)
409409
| Map(t1, t2) -> sprintf "new HashMap<%s, %s>()" (get_java_type t1) (get_java_type t2)
410410
| Ref(ty) -> sprintf "new %s(\"OpaqueRef:NULL\")" (class_case ty)
@@ -636,7 +636,7 @@ let gen_marshall_body file = function
636636
}\n"
637637

638638
| Ref(ty) -> fprintf file " return new %s((String) object);\n" (class_case ty)
639-
| Enum(name,_,ls) ->
639+
| Enum(name,ls) ->
640640
fprintf file " try {\n";
641641
fprintf file " return %s.valueOf(((String) object).toUpperCase().replace('-','_'));\n" (class_case name);
642642
fprintf file " } catch (IllegalArgumentException ex) {\n";

powershell/common_functions.ml

+2-2
Original file line numberDiff line numberDiff line change
@@ -147,10 +147,10 @@ and exposed_type = function
147147
| DateTime -> "DateTime"
148148
| Ref name -> sprintf "XenRef<%s>" (qualified_class_name name)
149149
| Set(Ref name) -> sprintf "List<XenRef<%s>>" (qualified_class_name name)
150-
| Set(Enum(name,_,_)) -> sprintf "List<%s>" name
150+
| Set(Enum(name, _)) -> sprintf "List<%s>" name
151151
| Set(Int) -> "long[]"
152152
| Set(String) -> "string[]"
153-
| Enum(name,_,_) -> name
153+
| Enum(name, _) -> name
154154
| Map(u, v) -> sprintf "Dictionary<%s, %s>" (exposed_type u)
155155
(exposed_type v)
156156
| Record name -> qualified_class_name name

powershell/gen_powershell_binding.ml

+2-2
Original file line numberDiff line numberDiff line change
@@ -643,8 +643,8 @@ and convert_from_hashtable fname ty =
643643
| Set(String) -> sprintf "Marshalling.ParseStringArray(HashTable, %s)" field
644644
| Set(Ref x) -> sprintf "Marshalling.ParseSetRef<%s>(HashTable, %s)"
645645
(exposed_class_name x) field
646-
| Set(Enum(x,_,_)) -> sprintf "Helper.StringArrayToEnumList<%s>(Marshalling.ParseStringArray(HashTable, %s))" x field
647-
| Enum(x,_,_) -> sprintf "(%s)CommonCmdletFunctions.EnumParseDefault(typeof(%s), Marshalling.ParseString(HashTable, %s))"
646+
| Set(Enum(x, _)) -> sprintf "Helper.StringArrayToEnumList<%s>(Marshalling.ParseStringArray(HashTable, %s))" x field
647+
| Enum(x, _) -> sprintf "(%s)CommonCmdletFunctions.EnumParseDefault(typeof(%s), Marshalling.ParseString(HashTable, %s))"
648648
x x field
649649
| Map(Ref x, Record _) -> sprintf "Marshalling.ParseMapRefRecord<%s, Proxy_%s>(HashTable, %s)"
650650
(exposed_class_name x) (exposed_class_name x) field

0 commit comments

Comments
 (0)