diff options
author | Adam Chlipala <adam@chlipala.net> | 2014-01-04 19:02:14 -0500 |
---|---|---|
committer | Adam Chlipala <adam@chlipala.net> | 2014-01-04 19:02:14 -0500 |
commit | 771723435b7949b0a0ccb1e55ce919994a97613f (patch) | |
tree | 094c7e8aa2ab521cce351f856ca80f42e5bc77b0 /src/settings.sml | |
parent | d7c4eb5eb07091dfa292943c8a6825a2ec7f244c (diff) |
noMangleSql .urp directive
Diffstat (limited to 'src/settings.sml')
-rw-r--r-- | src/settings.sml | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/settings.sml b/src/settings.sml index eaaa374d..ebe38b17 100644 --- a/src/settings.sml +++ b/src/settings.sml @@ -696,4 +696,24 @@ val timeFormat = ref "%c" fun setTimeFormat v = timeFormat := v fun getTimeFormat () = !timeFormat +fun lowercase s = + case s of + "" => "" + | _ => str (Char.toLower (String.sub (s, 0))) ^ String.extract (s, 1, NONE) + +fun capitalize s = + case s of + "" => "" + | _ => str (Char.toUpper (String.sub (s, 0))) ^ String.extract (s, 1, NONE) + +val mangle = ref true +fun setMangleSql x = mangle := x +fun mangleSqlTable s = if !mangle then "uw_" ^ capitalize s + else if #name (currentDbms ()) = "mysql" then capitalize s + else "\"" ^ lowercase s ^ "\"" +fun mangleSql s = if !mangle then "uw_" ^ s + else if #name (currentDbms ()) = "mysql" then lowercase s + else "\"" ^ lowercase s ^ "\"" +fun mangleSqlCatalog s = if !mangle then "uw_" ^ s else lowercase s + end |