1// Generated by purs version 0.13.6
3var $foreign = require("./foreign.js");
4var Data_Array = require("../Data.Array/index.js");
5var Data_Bounded = require("../Data.Bounded/index.js");
6var Data_Enum = require("../Data.Enum/index.js");
7var Data_Eq = require("../Data.Eq/index.js");
8var Data_EuclideanRing = require("../Data.EuclideanRing/index.js");
9var Data_Functor = require("../Data.Functor/index.js");
10var Data_Maybe = require("../Data.Maybe/index.js");
11var Data_Ord = require("../Data.Ord/index.js");
12var Data_String_CodeUnits = require("../Data.String.CodeUnits/index.js");
13var Data_String_Unsafe = require("../Data.String.Unsafe/index.js");
14var Data_Tuple = require("../Data.Tuple/index.js");
15var Data_Unfoldable = require("../Data.Unfoldable/index.js");
16var CodePoint = function (x) {
19var unsurrogate = function (lead) {
20 return function (trail) {
21 return (((lead - 55296 | 0) * 1024 | 0) + (trail - 56320 | 0) | 0) + 65536 | 0;
24var isTrail = function (cu) {
25 return 56320 <= cu && cu <= 57343;
27var isLead = function (cu) {
28 return 55296 <= cu && cu <= 56319;
30var uncons = function (s) {
31 var v = Data_String_CodeUnits.length(s);
33 return Data_Maybe.Nothing.value;
36 return new Data_Maybe.Just({
37 head: Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(0)(s)),
41 var cu1 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(1)(s));
42 var cu0 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(0)(s));
43 var $264 = isLead(cu0) && isTrail(cu1);
45 return new Data_Maybe.Just({
46 head: unsurrogate(cu0)(cu1),
47 tail: Data_String_CodeUnits.drop(2)(s)
50 return new Data_Maybe.Just({
52 tail: Data_String_CodeUnits.drop(1)(s)
55var unconsButWithTuple = function (s) {
56 return Data_Functor.map(Data_Maybe.functorMaybe)(function (v) {
57 return new Data_Tuple.Tuple(v.head, v.tail);
60var toCodePointArrayFallback = function (s) {
61 return Data_Unfoldable.unfoldr(Data_Unfoldable.unfoldableArray)(unconsButWithTuple)(s);
63var unsafeCodePointAt0Fallback = function (s) {
64 var cu0 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(0)(s));
65 var $268 = isLead(cu0) && Data_String_CodeUnits.length(s) > 1;
67 var cu1 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar)(Data_String_Unsafe.charAt(1)(s));
68 var $269 = isTrail(cu1);
70 return unsurrogate(cu0)(cu1);
76var unsafeCodePointAt0 = $foreign["_unsafeCodePointAt0"](unsafeCodePointAt0Fallback);
77var toCodePointArray = $foreign["_toCodePointArray"](toCodePointArrayFallback)(unsafeCodePointAt0);
78var length = function ($281) {
79 return Data_Array.length(toCodePointArray($281));
81var fromCharCode = (function () {
82 var $282 = Data_Enum.toEnumWithDefaults(Data_Enum.boundedEnumChar)(Data_Bounded.bottom(Data_Bounded.boundedChar))(Data_Bounded.top(Data_Bounded.boundedChar));
83 return function ($283) {
84 return Data_String_CodeUnits.singleton($282($283));
87var singletonFallback = function (v) {
89 return fromCharCode(v);
91 var lead = Data_EuclideanRing.div(Data_EuclideanRing.euclideanRingInt)(v - 65536 | 0)(1024) + 55296 | 0;
92 var trail = Data_EuclideanRing.mod(Data_EuclideanRing.euclideanRingInt)(v - 65536 | 0)(1024) + 56320 | 0;
93 return fromCharCode(lead) + fromCharCode(trail);
95var singleton = $foreign["_singleton"](singletonFallback);
96var takeFallback = function (n) {
102 if (v1 instanceof Data_Maybe.Just) {
103 return singleton(v1.value0.head) + takeFallback(n - 1 | 0)(v1.value0.tail);
108var take = $foreign["_take"](takeFallback);
109var eqCodePoint = new Data_Eq.Eq(function (x) {
110 return function (y) {
114var ordCodePoint = new Data_Ord.Ord(function ($dollar__unused) {
117 return function (y) {
118 return Data_Ord.compare(Data_Ord.ordInt)(x)(y);
121var codePointFromChar = (function () {
122 var $284 = Data_Enum.fromEnum(Data_Enum.boundedEnumChar);
123 return function ($285) {
124 return CodePoint($284($285));
128 codePointFromChar: codePointFromChar,
129 singleton: singleton,
130 toCodePointArray: toCodePointArray,
134 eqCodePoint: eqCodePoint,
135 ordCodePoint: ordCodePoint
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list