Skip to content

jslba/haxe-serializer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

npm tests GitHub

The Serializer class can be used to encode values and objects into a String, from which the Unserializer class can recreate the original representation.
This class can be used in two ways :

  • create a new Serializer() instance, call its run() method with any argument to retrieve it String representation.
  • call Serializer.serialize() to obtain the serialized representation of a single argument.

The specification of the serialization format can be found here.

List of supported formats

  • JavaScript native type :
    • Array
    • Boolean
    • Date
    • Null
    • Number (Zero, Integer, Float, Positive / Negative infinity, NaN)
    • Object
    • String
    • Error (Exception).
  • « haxe-type » type :
    • List (haxe.ds.List)
    • Bytes (haxe.io.Bytes)
    • IntMap (haxe.ds.IntMap)
    • StringMap (haxe.ds.StringMap)
    • Enum (experimental)
    • Class (experimental)

List of unsupported formats

  • ObjectMap (haxe.ds.ObjectMap)
  • custom

Note
If you are looking for how to use it, you can look at some examples in the unit tests.

Constructor

new Serializer(?useCache: Boolean = false, ?useEnumIndex: Boolean = false)

Variables

// cache setting for `this` Serializer instance.
public USE_CACHE: Boolean
// enum index setting for `this` Serializer instance.
USE_ENUM_INDEX: Boolean
// `String` cache for `this` Serializer instance.
StringCache: Array
// `Object` cache for `this` Serializer instance.
ObjectCache: Array

Methods

// Serializes `data` and returns the `String` representation.
static serialize(data: Mixed): String
// return serialized `data`
public run(data: Mixed): String
// return a string representation of `v` type (internal function)
public typeof(v: Mixed): String
public cache(type: String, v: Mixed): String | false
// return a string representation of `s` (internal function)
public serializeString(s: String): String
// return a string representation of `d` (internal function)
public serializeDate(d: Date): String
// return a string representation of `n` (internal function)
public serializeNumber(n: Int): String
// return a string representation of `o` according to `type` (internal function)
public serializeObject(o: Object, type: String): String
// return a string representation of `e` (internal function)
public serializeEnum(e: Enum): String
// return a string representation of `b` (internal function)
public serializeBytes(b: Bytes): String

About

An implementation of haxe.Serializer

Resources

License

Stars

Watchers

Forks

Releases

No releases published