RunSerializerOutput.hx 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import haxe.Serializer.run;
  2. class RunSerializerOutput {
  3. static function main() {
  4. new RunSerializerOutput();
  5. }
  6. var object:{};
  7. function new() {
  8. object = {};
  9. add("nul", null);
  10. add("int0", 0);
  11. add("intMinus1", -1);
  12. add("int1", 1);
  13. add("floatNaN", Math.NaN);
  14. add("floatPosInf", Math.POSITIVE_INFINITY);
  15. add("floatNegInf", Math.NEGATIVE_INFINITY);
  16. add("boolTrue", true);
  17. add("boolFalse", false);
  18. add("arrayEmpty", []);
  19. add("array0", [0]);
  20. add("arrayNull", [null]);
  21. add("array01", [0, 1]);
  22. var smap = new Map<String, String>();
  23. add("stringMapEmpty", smap);
  24. smap["foo"] = null;
  25. add("stringMapFooNull", smap);
  26. smap["foo"] = "bar";
  27. add("stringMapFooBar", smap);
  28. var imap = new Map<Int, String>();
  29. add("intMapEmpty", imap);
  30. imap[0] = "1";
  31. add("intMap01", imap);
  32. imap[1] = "2";
  33. add("intMap0112", imap);
  34. var omap = new Map<{}, String>();
  35. add("objectMapEmpty", omap);
  36. // TODO
  37. var s = haxe.Json.stringify(object);
  38. sys.io.File.saveContent("../serializedValues.txt", s);
  39. }
  40. function add<T>(key:String, value:T) {
  41. Reflect.setField(object, key, run(value));
  42. }
  43. }