Skip to content

jsx/mizuki

Repository files navigation

mizuki Build Status

Set of basic utilities for JSX

SYNOPSIS

import "mizuki/datetime.jsx"

// date/time format

log DateTime.strftime(new Date(),   "%Y-%m-%d %H:%M:%S.%3N"); // strftime(3)
log DateTime.strptime("2012-12-01", "%Y-%m-%d %H:%M:%S.%3N"); // strptime(3)

import "mizuki/random/mt.jsx";

// pseudo random generator

var r = new MT(); // Mersenne Twister generator
log r.nextInt();  // Generates 32-bit integer
log r.nextReal(); // Generates [0, 1) number with 53-bit resolution
log r.nextUUID(); // RFC-4122 complaint UUID

import "mizuki/utility.jsx";

// utilities for arrays, strings and numbers

ArrayUtil.<T>.shuffleInPlace(array);
ArrayUtil.<T>.sortInPlace(array, compareFunction); // stable sort

log StringUtil.visualWidth("hello");
log StringUtil.byteLength("hello");
log StringUtil.charLength("hello");

log Base64.encode(text);
log Base64.decode(b64encoded);

log NumberUtil.format(3.1415, 2); // "3.14"

import "mizuki/collection.jsx";

// Set for any types

var set = new Set.<number>([1, 2, 3], (a, b) -> a - b);
set.has(1); // true
set.has(4); // false

var u = set.union(otherSet);
var i = set.intersection(otherSet);
var d = set.difference(otherSet);

import "mizuki/digest/md5.jsx";

var hex = MD5.hex("value"); // -> 2063c1608d6e0baf80249c42e2be5804

DESCRIPTION

Mizuki provides a set of utilities for JSX, which is not a part of JSX language but inevitable.

INSTALL

This package is published as https://npmjs.org/package/mizuki.jsx

npm install mizuki.jsx

PREREQUISITES

The JSX compiler and NodeJS 0.8.0 or later.

COPYRIGHT AND LICENSE

Copyright (c) 2012 Fuji, Goro (gfx) [email protected].

This library can be distributed under the MIT License unless other licenses are specified in each file.

About

Basic utilities for JSX

Resources

License

Stars

Watchers

Forks

Packages

No packages published