view tests/filter.ur @ 1888:5f478ecf65e4

Identify more local definitions as functions that should be lifted to the top level, which has synergistic effects on inlining later
author Adam Chlipala <adam@chlipala.net>
date Tue, 05 Nov 2013 11:58:52 -0500
parents 6d9538ce94d8
children
line wrap: on
line source
fun filter [fs ::: {Type}] [ks] (t : sql_table fs ks) (p : sql_exp [T = fs] [] [] bool)
   : sql_query [T = fs] [] =
   (SELECT * FROM t WHERE {p})

table t : { A : int, B : float }

fun main () =
    queryX (filter t (WHERE t.A > 3))
           (fn r => <xml>{[r.T.A]}, {[r.T.B]}</xml>)