changeset 296:5dc11235129d

Reading bools from SQL
author Adam Chlipala <adamc@hcoop.net>
date Sun, 07 Sep 2008 12:58:33 -0400
parents 1afa94582275
children 59dc042629b9
files src/c/urweb.c tests/pquery.ur
diffstat 2 files changed, 5 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/c/urweb.c	Sun Sep 07 12:56:46 2008 -0400
+++ b/src/c/urweb.c	Sun Sep 07 12:58:33 2008 -0400
@@ -808,9 +808,9 @@
 }
 
 lw_Basis_bool lw_Basis_stringToBool_error(lw_context ctx, lw_Basis_string s) {
-  if (!strcasecmp (s, "True"))
+  if (!strcasecmp(s, "T") || !strcasecmp (s, "True"))
     return lw_Basis_True;
-  else if (!strcasecmp (s, "False"))
+  else if (!strcasecmp(s, "F") || !strcasecmp (s, "False"))
     return lw_Basis_False;
   else
     lw_error(ctx, FATAL, "Can't parse bool: %s", s);
--- a/tests/pquery.ur	Sun Sep 07 12:56:46 2008 -0400
+++ b/tests/pquery.ur	Sun Sep 07 12:58:33 2008 -0400
@@ -1,13 +1,14 @@
-table t1 : {A : int, B : string, C : float}
+table t1 : {A : int, B : string, C : float, D : bool}
 
 fun lookup (inp : {B : string}) =
         s <- query (SELECT * FROM t1 WHERE t1.B = {inp.B})
                 (fn fs _ => return fs.T1)
-                {A = 0, B = "Couldn't find it!", C = 0.0};
+                {A = 0, B = "Couldn't find it!", C = 0.0, D = False};
         return <html><body>
                 A: {cdata (show _ s.A)}<br/>
                 B: {cdata (show _ s.B)}<br/>
                 C: {cdata (show _ s.C)}<br/>
+                D: {cdata (show _ s.D)}<br/>
         </body></html>
 
 fun main () : transaction page = return <html><body>