git.iko.soy/rowtype-yoga/psfp
on 2d91747 help sign in
56 lines 1.7 kB history raw
1// Generated by purs version 0.13.6
2"use strict";
3var $foreign = require("./foreign.js");
4var Data_Either = require("../Data.Either/index.js");
5var Data_Maybe = require("../Data.Maybe/index.js");
6var Data_String_CodeUnits = require("../Data.String.CodeUnits/index.js");
7var Data_String_Regex_Flags = require("../Data.String.Regex.Flags/index.js");
8var renderFlags = function (v) {
9 return (function () {
10 if (v.value0.global) {
11 return "g";
12 };
13 return "";
14 })() + ((function () {
15 if (v.value0.ignoreCase) {
16 return "i";
17 };
18 return "";
19 })() + ((function () {
20 if (v.value0.multiline) {
21 return "m";
22 };
23 return "";
24 })() + ((function () {
25 if (v.value0.sticky) {
26 return "y";
27 };
28 return "";
29 })() + (function () {
30 if (v.value0.unicode) {
31 return "u";
32 };
33 return "";
34 })())));
35};
36var regex = function (s) {
37 return function (f) {
38 return $foreign["regex'"](Data_Either.Left.create)(Data_Either.Right.create)(s)(renderFlags(f));
39 };
40};
41var parseFlags = function (s) {
42 return new Data_String_Regex_Flags.RegexFlags({
43 global: Data_String_CodeUnits.contains("g")(s),
44 ignoreCase: Data_String_CodeUnits.contains("i")(s),
45 multiline: Data_String_CodeUnits.contains("m")(s),
46 sticky: Data_String_CodeUnits.contains("y")(s),
47 unicode: Data_String_CodeUnits.contains("u")(s)
48 });
49};
50var match = $foreign["_match"](Data_Maybe.Just.create)(Data_Maybe.Nothing.value);
51module.exports = {
52 regex: regex,
53 renderFlags: renderFlags,
54 parseFlags: parseFlags,
55 match: match
56};