comparison src/mono_util.sml @ 1199:c316ca3c9ec6

Pushing policies through
author Adam Chlipala <adamc@hcoop.net>
date Sun, 04 Apr 2010 12:29:34 -0400
parents 7a31e0cf25e9
children 648e6b087dfb
comparison
equal deleted inserted replaced
1197:6d8e3dcb9713 1199:c316ca3c9ec6
532 S.bind2 (mfe ctx e1, 532 S.bind2 (mfe ctx e1,
533 fn e1' => 533 fn e1' =>
534 S.map2 (mfe ctx e2, 534 S.map2 (mfe ctx e2,
535 fn e2' => 535 fn e2' =>
536 (DTask (e1', e2'), loc))) 536 (DTask (e1', e2'), loc)))
537 | DPolicy pol =>
538 S.map2 (mfpol ctx pol,
539 fn p' =>
540 (DPolicy p', loc))
541
542 and mfpol ctx pol =
543 case pol of
544 PolQuery e =>
545 S.map2 (mfe ctx e,
546 PolQuery)
537 547
538 and mfvi ctx (x, n, t, e, s) = 548 and mfvi ctx (x, n, t, e, s) =
539 S.bind2 (mft t, 549 S.bind2 (mft t,
540 fn t' => 550 fn t' =>
541 S.map2 (mfe ctx e, 551 S.map2 (mfe ctx e,
619 | DDatabase _ => ctx 629 | DDatabase _ => ctx
620 | DJavaScript _ => ctx 630 | DJavaScript _ => ctx
621 | DCookie _ => ctx 631 | DCookie _ => ctx
622 | DStyle _ => ctx 632 | DStyle _ => ctx
623 | DTask _ => ctx 633 | DTask _ => ctx
634 | DPolicy _ => ctx
624 in 635 in
625 S.map2 (mff ctx' ds', 636 S.map2 (mff ctx' ds',
626 fn ds' => 637 fn ds' =>
627 d' :: ds') 638 d' :: ds')
628 end) 639 end)
672 | DView _ => count 683 | DView _ => count
673 | DDatabase _ => count 684 | DDatabase _ => count
674 | DJavaScript _ => count 685 | DJavaScript _ => count
675 | DCookie _ => count 686 | DCookie _ => count
676 | DStyle _ => count 687 | DStyle _ => count
677 | DTask _ => count) 0 688 | DTask _ => count
689 | DPolicy _ => count) 0
678 690
679 end 691 end
680 692
681 end 693 end