0 | module Libraries.Text.PrettyPrint.Prettyprinter.Symbols
  1 |
  2 | import Libraries.Text.PrettyPrint.Prettyprinter.Doc
  3 |
  4 | %default total
  5 |
  6 | export
  7 | squote : Doc ann
  8 | squote = pretty0 '\''
  9 |
 10 | export
 11 | dquote : Doc ann
 12 | dquote = pretty0 '"'
 13 |
 14 | export
 15 | lparen : Doc ann
 16 | lparen = pretty0 '('
 17 |
 18 | export
 19 | rparen : Doc ann
 20 | rparen = pretty0 ')'
 21 |
 22 | export
 23 | langle : Doc ann
 24 | langle = pretty0 '<'
 25 |
 26 | export
 27 | rangle : Doc ann
 28 | rangle = pretty0 '>'
 29 |
 30 | export
 31 | lbracket : Doc ann
 32 | lbracket = pretty0 '['
 33 |
 34 | export
 35 | rbracket : Doc ann
 36 | rbracket = pretty0 ']'
 37 |
 38 | export
 39 | lbrace : Doc ann
 40 | lbrace = pretty0 '{'
 41 |
 42 | export
 43 | rbrace : Doc ann
 44 | rbrace = pretty0 '}'
 45 |
 46 | export
 47 | semi : Doc ann
 48 | semi = pretty0 ';'
 49 |
 50 | export
 51 | colon : Doc ann
 52 | colon = pretty0 ':'
 53 |
 54 | export
 55 | comma : Doc ann
 56 | comma = pretty0 ','
 57 |
 58 | export
 59 | space : Doc ann
 60 | space = pretty0 ' '
 61 |
 62 | export
 63 | dot : Doc ann
 64 | dot = pretty0 '.'
 65 |
 66 | export
 67 | slash : Doc ann
 68 | slash = pretty0 '/'
 69 |
 70 | export
 71 | backslash : Doc ann
 72 | backslash = pretty0 '\\'
 73 |
 74 | export
 75 | equals : Doc ann
 76 | equals = pretty0 '='
 77 |
 78 | export
 79 | pipe : Doc ann
 80 | pipe = pretty0 '|'
 81 |
 82 | export
 83 | squotes : Doc ann -> Doc ann
 84 | squotes = enclose squote squote
 85 |
 86 | export
 87 | dquotes : Doc ann -> Doc ann
 88 | dquotes = enclose dquote dquote
 89 |
 90 | export
 91 | parens : Doc ann -> Doc ann
 92 | parens = enclose lparen rparen
 93 |
 94 | export
 95 | parenthesise : Bool -> Doc ann -> Doc ann
 96 | parenthesise b = if b then parens else id
 97 |
 98 | export
 99 | angles : Doc ann -> Doc ann
100 | angles = enclose langle rangle
101 |
102 | export
103 | brackets : {default lbracket ldelim : Doc ann} ->
104 |            {default rbracket rdelim : Doc ann} ->
105 |            Doc ann -> Doc ann
106 | brackets {ldelim, rdelim} = enclose ldelim rdelim
107 |
108 | export
109 | braces : Doc ann -> Doc ann
110 | braces = enclose lbrace rbrace
111 |