Files
gf-core/examples/unix/CharUni.gf

68 lines
1.2 KiB
Plaintext

concrete CharUni of Char = open Prelude in {
param
LForm = LCap | LSma ;
oper
chr : Str -> Str -> {s : LForm => Str} = \c,C -> {
s = table {
LCap => C ;
LSma => c
}
} ;
lincat
Letter = {s : LForm => Str} ;
lin
BaseChr c = c ;
ConsChr = infixSS "&+" ;
C_dot = ss "." ;
C_pipe = ss "|" ;
C_hyphen = ss "-" ;
CSmall c = ss (c.s ! LSma) ;
CCap c = ss (c.s ! LCap) ;
CC c = ss (c.s ! LSma) ;
CDig_0 = ss "0" ;
CDig_1 = ss "1" ;
CDig_2 = ss "2" ;
CDig_3 = ss "3" ;
CDig_4 = ss "4" ;
CDig_5 = ss "5" ;
CDig_6 = ss "6" ;
CDig_7 = ss "7" ;
CDig_8 = ss "8" ;
CDig_9 = ss "9" ;
L_a = chr "a" "A" ;
L_b = chr "b" "B" ;
L_c = chr "c" "C" ;
L_d = chr "d" "D" ;
L_e = chr "e" "E" ;
L_f = chr "f" "F" ;
L_g = chr "g" "G" ;
L_h = chr "h" "H" ;
L_i = chr "i" "I" ;
L_j = chr "j" "J" ;
L_k = chr "k" "K" ;
L_l = chr "l" "L" ;
L_m = chr "m" "M" ;
L_n = chr "n" "N" ;
L_o = chr "o" "O" ;
L_p = chr "p" "P" ;
L_q = chr "q" "Q" ;
L_r = chr "r" "R" ;
L_s = chr "s" "S" ;
L_t = chr "t" "T" ;
L_u = chr "u" "U" ;
L_v = chr "v" "V" ;
L_w = chr "w" "W" ;
L_x = chr "x" "X" ;
L_y = chr "y" "Y" ;
L_z = chr "z" "Z" ;
}