Implementation of STL (Standard Template Library) for the AssemblyScript.
- Containers
- Iterators
- Algorithms
- Functors
ASTL is an open-source project providing features of the STL, migrated from the C++ to the AssemblyScript. You can enjoy those STL's own specific containers, algorithms and functors in the AssemblyScript.
Below components are list of the provided objects in the ASTL.
- Linear Conatainers
VectorDequeListForwardListVectorBoolean
- Associative Containers
- Tree-structured ontainers
TreeMapTreeMultiMapTreeMultiSetTreeSet
- Hash-buckets based containers
HashMapHashMultiMapHashMultiSetHashSet
- Tree-structured ontainers
- Adaptor Containers
- Linear adaptors
StackQueuePriorityQueue
- Associative adaptors
experimental.FlatMapexperimental.FlatMultiMapexperimental.FlatMultiSetexperimental.FlatSetexperimental.LightMapexperimental.LightSet
- Linear adaptors
<algorithm>- binary_search
- heap
- iterations
- mathematics
- merge
- modifiers
- partition
- sorting
- union_set
<exception>- Exception
- LogicError
- RntimeError
- Exception
<functional>- comparators
- hash
<numeric>- operators
- operations
- special_math
<utility>
Installing the ASTL in the NodeJS environment is very easy. Just install with the npm.
npm install --save astlimport std from "astl";
function main(): void
{
const map: std.TreeMap<i32, string> = new std.TreeMap();
map.emplace(1, "First");
map.emplace(4, "Fourth");
map.emplace(5, "Fifth");
map.set(9, "Nineth");
for (let it = map.begin(); it != map.end(); it = it.next())
trace(it.first.toString() + ", " + it.second);
const it: std.TreeMap.Iterator<i32, string> = map.lower_bound(3);
trace("lower_bound() of 3 is: " + it.first.toString());
}
main();