From 71ae054ffc5a4fced56652cd4b533637b40e0b42 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tadde=C3=BCs=20Kroes?= <taddeus@users.noreply.github.com>
Date: Mon, 21 Jul 2014 18:54:07 +0200
Subject: [PATCH] Added some lowercase casts to parser for input normalization

---
 parser.mly | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/parser.mly b/parser.mly
index 065fb3c..6a7f1fc 100644
--- a/parser.mly
+++ b/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 "%") }
-- 
GitLab