This commit adds an Adapter that transpiles sets using ES6 Set
implementation.
The goal of the adapter is to use a standard API for the transpiled
collections in order to abstract implementation details of collections
as well as enable
inter-operability between collections just as in Java.
For example in Java most collections can be initialized with any
arbitrary collection and never need to know how that collection is
implemented.
Having the transpiled code work only via the API at collection
boundaries enables this.
However this means that collections transpiled by this adapter are not
compatible with those transpiled by other adapters - this should be less
of an issue once the adapter has support to handle all collection types.
Related #548Fixes#549
This patch ignores any arguments that isn't of Map type during
the invocation of a Map collection. Based on the supported
data-structures, these non-Map arguments can either be of type
int (capacity, loadFactor) or Comparator. The use case for the
latter is not currently supported while the former have no equivalent
in javascript.
Fixes#508
Prior to this commit, async methods had to strictly return a promise.
This needed to be improved in order to be able to return a simple value
in an async method, just like in TypeScript.
Since this is now allowed, this is why there is a new await method which
does not take a Promise parameter, but a generic type. (this
modification was in previous commit:
7f2000e03beee56ab4454b2bdb2d886048f6112e)
Brings dynamic invoke capability to def.js.Object.
It allows to dynamically call a method on an object for instance if
definition is missing or simply if it is not possible to do it
otherwise.