Mercurial > urweb
comparison lib/basis.lig @ 221:79819a6346e2
Fields in SQL expressions
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sat, 16 Aug 2008 17:46:26 -0400 |
parents | 2b665e822e9a |
children | bbe5899a9585 |
comparison
equal
deleted
inserted
replaced
220:2b665e822e9a | 221:79819a6346e2 |
---|---|
24 [nm] ~ acc => selected_unselected.1 ~ selected_unselected.2 => | 24 [nm] ~ acc => selected_unselected.1 ~ selected_unselected.2 => |
25 [nm = selected_unselected.1 ++ selected_unselected.2] ++ acc) [] tables) bool} | 25 [nm = selected_unselected.1 ++ selected_unselected.2] ++ acc) [] tables) bool} |
26 -> sql_query (fold (fn nm => fn selected_unselected :: ({Type} * {Type}) => fn acc => [nm] ~ acc => | 26 -> sql_query (fold (fn nm => fn selected_unselected :: ({Type} * {Type}) => fn acc => [nm] ~ acc => |
27 [nm = selected_unselected.1] ++ acc) [] tables) | 27 [nm = selected_unselected.1] ++ acc) [] tables) |
28 | 28 |
29 class sql_type | 29 val sql_field : otherTabs ::: {{Type}} -> otherFields ::: {Type} -> fieldType ::: Type |
30 val sql_bool : sql_type bool | 30 -> tab :: Name -> field :: Name |
31 val sql_int : sql_type int | 31 -> sql_exp ([tab = [field = fieldType] ++ otherFields] ++ otherTabs) fieldType |
32 val sql_float : sql_type float | |
33 val sql_string : sql_type string | |
34 | 32 |
35 val sql_inject : tables ::: {{Type}} -> t ::: Type -> t -> sql_type t -> sql_exp tables t | 33 class sql_injectable |
34 val sql_bool : sql_injectable bool | |
35 val sql_int : sql_injectable int | |
36 val sql_float : sql_injectable float | |
37 val sql_string : sql_injectable string | |
38 val sql_inject : tables ::: {{Type}} -> t ::: Type -> t -> sql_injectable t -> sql_exp tables t | |
36 | 39 |
37 con sql_unary :: Type -> Type -> Type | 40 con sql_unary :: Type -> Type -> Type |
38 val sql_not : sql_unary bool bool | 41 val sql_not : sql_unary bool bool |
39 val sql_unary : tables ::: {{Type}} -> arg ::: Type -> res ::: Type | 42 val sql_unary : tables ::: {{Type}} -> arg ::: Type -> res ::: Type |
40 -> sql_unary arg res -> sql_exp tables arg -> sql_exp tables res | 43 -> sql_unary arg res -> sql_exp tables arg -> sql_exp tables res |
52 val sql_le : sql_comparison | 55 val sql_le : sql_comparison |
53 val sql_gt : sql_comparison | 56 val sql_gt : sql_comparison |
54 val sql_ge : sql_comparison | 57 val sql_ge : sql_comparison |
55 val sql_comparison : sql_comparison | 58 val sql_comparison : sql_comparison |
56 -> tables ::: {{Type}} -> t ::: Type -> sql_exp tables t -> sql_exp tables t | 59 -> tables ::: {{Type}} -> t ::: Type -> sql_exp tables t -> sql_exp tables t |
57 -> sql_type t -> sql_exp tables bool | 60 -> sql_injectable t -> sql_exp tables bool |
58 | 61 |
59 (** XML *) | 62 (** XML *) |
60 | 63 |
61 con tag :: {Type} -> {Unit} -> {Unit} -> {Type} -> {Type} -> Type | 64 con tag :: {Type} -> {Unit} -> {Unit} -> {Type} -> {Type} -> Type |
62 | 65 |