浏览代码

Added some lowercase casts to parser for input normalization

Taddeüs Kroes 11 年之前
父节点
当前提交
71ae054ffc
共有 1 个文件被更改,包括 3 次插入3 次删除
  1. 3 3
      parser.mly

+ 3 - 3
parser.mly

@@ -270,9 +270,9 @@ term:
   | op=unary_operator v=numval S*   { unary_number (Unary (op, v)) }
   | v=numval S*                     { v }
   | str=STRING S*                   { Strlit str }
-  | id=IDENT S*                     { Ident id }
+  | id=IDENT S*                     { Ident (String.lowercase id) }
   | uri=URI S*                      { Uri uri }
-  | fn=FUNCTION arg=expr RPAREN S*  { Function (fn, arg) }
+  | fn=FUNCTION arg=expr RPAREN S*  { Function (String.lowercase fn, arg) }
   | hex=HASH S*
   { let h = "[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F]" in
     if Str.string_match (Str.regexp ("^" ^ h ^ "\\(" ^ h ^ "\\)?$")) hex 0
@@ -283,5 +283,5 @@ unary_operator:
   | PLUS   { "+" }
 %inline numval:
   | n=NUMBER      { Number (n, None) }
-  | v=UNIT_VALUE  { let n, u = v in Number (n, Some u) }
+  | v=UNIT_VALUE  { let n, u = v in Number (n, Some (String.lowercase u)) }
   | n=PERCENTAGE  { Number (n, Some "%") }