More convenient sort function
This commit is contained in:
@@ -44,6 +44,7 @@ class Kiss {
|
|||||||
|
|
||||||
// Helpful aliases
|
// Helpful aliases
|
||||||
k.defAlias("print", Symbol("Prelude.print"));
|
k.defAlias("print", Symbol("Prelude.print"));
|
||||||
|
k.defAlias("sort", Symbol("Prelude.sort"));
|
||||||
k.defAlias("groups", Symbol("Prelude.groups"));
|
k.defAlias("groups", Symbol("Prelude.groups"));
|
||||||
k.defAlias("zip", Symbol("Prelude.zip"));
|
k.defAlias("zip", Symbol("Prelude.zip"));
|
||||||
k.defAlias("pairs", Symbol("Prelude.pairs")); // TODO test pairs
|
k.defAlias("pairs", Symbol("Prelude.pairs")); // TODO test pairs
|
||||||
|
@@ -137,6 +137,14 @@ class Prelude {
|
|||||||
|
|
||||||
public static var areEqual = variadic(_areEqual, true);
|
public static var areEqual = variadic(_areEqual, true);
|
||||||
|
|
||||||
|
public static function sort<T>(a:Array<T>, ?comp:(T, T) -> Int):kiss.List<T> {
|
||||||
|
if (comp == null)
|
||||||
|
comp = Reflect.compare;
|
||||||
|
var sorted = a.copy();
|
||||||
|
sorted.sort(comp);
|
||||||
|
return sorted;
|
||||||
|
}
|
||||||
|
|
||||||
public static function groups<T>(a:Array<T>, size, extraHandling = Drop) {
|
public static function groups<T>(a:Array<T>, size, extraHandling = Drop) {
|
||||||
var numFullGroups = Math.floor(a.length / size);
|
var numFullGroups = Math.floor(a.length / size);
|
||||||
var fullGroups = [
|
var fullGroups = [
|
||||||
|
Reference in New Issue
Block a user