/*
 * loquat-char
 * copyright (c) 2016 Susisu
 */

"use strict";

module.exports = (core, sugar) => {
    let _char = require("./lib/char.js")(core);
    const string     = _char.string;
    const satisfy    = _char.satisfy;
    const oneOf      = _char.oneOf;
    const noneOf     = _char.noneOf;
    const char       = _char.char;
    const anyChar    = _char.anyChar;
    const space      = _char.space;
    const spaces     = _char.spaces;
    const newline    = _char.newline;
    const tab        = _char.tab;
    const upper      = _char.upper;
    const lower      = _char.lower;
    const letter     = _char.letter;
    const digit      = _char.digit;
    const alphaNum   = _char.alphaNum;
    const octDigit   = _char.octDigit;
    const hexDigit   = _char.hexDigit;
    const manyChars  = _char.manyChars;
    const manyChars1 = _char.manyChars1;
    const regexp     = _char.regexp;

    return Object.freeze({
        string,
        satisfy,
        oneOf,
        noneOf,
        char,
        anyChar,
        space,
        spaces,
        newline,
        tab,
        upper,
        lower,
        letter,
        digit,
        alphaNum,
        octDigit,
        hexDigit,
        manyChars,
        manyChars1,
        regexp
    });
};

@@ -78,16 +78,17 @@
 orts = (
+_
 core, su
@@ -142,24 +142,51 @@
 s%22)(
+_
 core);%0A
+%0A
     
-const
+return Object.freeze(%7B%0A       
  str
@@ -188,26 +188,25 @@
   string    
- 
-=
+:
  _char.strin
@@ -206,27 +206,25 @@
 r.string
-;
+,
 %0A    
-const
+   
  satisfy
@@ -226,18 +226,17 @@
 tisfy   
- =
+:
  _char.s
@@ -241,27 +241,25 @@
 .satisfy
-;
+,
 %0A    
-const
+   
  oneOf  
@@ -257,26 +257,25 @@
   oneOf     
- =
+:
  _char.oneOf
@@ -274,27 +274,25 @@
 ar.oneOf
-;
+,
 %0A    
-const
+   
  noneOf 
@@ -290,26 +290,25 @@
   noneOf    
- =
+:
  _char.noneO
@@ -308,27 +308,25 @@
 r.noneOf
-;%0A    const
+,%0A       
  char   
@@ -324,26 +324,25 @@
   char      
- =
+:
  _char.char;
@@ -340,27 +340,25 @@
 har.char
-;
+,
 %0A    
-const
+   
  anyChar
@@ -360,18 +360,17 @@
 yChar   
- 
-=
+:
  _char.a
@@ -375,27 +375,25 @@
 .anyChar
-;
+,
 %0A    
-const
+   
  space  
@@ -391,26 +391,25 @@
   space     
- =
+:
  _char.space
@@ -408,27 +408,25 @@
 ar.space
-;%0A    const
+,%0A       
  spaces 
@@ -424,26 +424,25 @@
   spaces    
- =
+:
  _char.space
@@ -442,27 +442,25 @@
 r.spaces
-;
+,
 %0A    
-const
+   
  newline
@@ -462,18 +462,17 @@
 wline   
- =
+:
  _char.n
@@ -477,27 +477,25 @@
 .newline
-;
+,
 %0A    
-const
+   
  tab    
@@ -493,26 +493,25 @@
   tab       
- =
+:
  _char.tab;%0A
@@ -508,27 +508,25 @@
 char.tab
-;
+,
 %0A    
-const
+   
  upper  
@@ -524,26 +524,25 @@
   upper     
- =
+:
  _char.upper
@@ -541,27 +541,25 @@
 ar.upper
-;
+,
 %0A    
-const
+   
  lower  
@@ -557,26 +557,25 @@
   lower     
- =
+:
  _char.lower
@@ -574,27 +574,25 @@
 ar.lower
-;
+,
 %0A    
-const
+   
  letter 
@@ -590,26 +590,25 @@
   letter    
- =
+:
  _char.lette
@@ -608,27 +608,25 @@
 r.letter
-;
+,
 %0A    
-const
+   
  digit  
@@ -624,26 +624,25 @@
   digit     
- 
-=
+:
  _char.digit
@@ -641,27 +641,25 @@
 ar.digit
-;
+,
 %0A    
-const
+   
  alphaNu
@@ -661,18 +661,17 @@
 phaNum  
- =
+:
  _char.a
@@ -677,27 +677,25 @@
 alphaNum
-;
+,
 %0A    
-const
+   
  octDigi
@@ -693,26 +693,25 @@
   octDigit  
- =
+:
  _char.octDi
@@ -713,27 +713,25 @@
 octDigit
-;
+,
 %0A    
-const
+   
  hexDigi
@@ -733,18 +733,17 @@
 xDigit  
- =
+:
  _char.h
@@ -749,27 +749,25 @@
 hexDigit
-;
+,
 %0A    
-const
+   
  manyCha
@@ -769,18 +769,17 @@
 nyChars 
- =
+:
  _char.m
@@ -786,27 +786,25 @@
 anyChars
-;
+,
 %0A    
-const
+   
  manyCha
@@ -806,18 +806,17 @@
 nyChars1
- =
+:
  _char.m
@@ -828,393 +828,36 @@
 ars1
-;
+,
 %0A    
-const regexp     = _char.
+    
 regexp
-;%0A%0A
     
-return Object.freeze(%7B%0A        string,%0A        satisfy,%0A        oneOf,%0A        noneOf,%0A        char,%0A        anyChar,%0A        space,%0A        spaces,%0A        newline,%0A        tab,%0A        upper,%0A        lower,%0A        letter,%0A        digit,%0A        alphaNum,%0A        octDigit,%0A        hexDigit,%0A        manyChars,%0A        manyChars1,%0A        
+: _char.
 rege

Simplify index