Add patch-without-at-meta

This commit is contained in:
Tony Garnock-Jones 2016-05-08 20:42:33 -04:00
parent fbece48f52
commit 5d46a6e631
2 changed files with 8 additions and 2 deletions

View File

@ -82,8 +82,7 @@
(define delta-aggregate/no-echo
(if (meta-label? label)
delta
(patch (trie-prune-branch (patch-added delta-aggregate) at-meta-parenthesis)
(trie-prune-branch (patch-removed delta-aggregate) at-meta-parenthesis))))
(patch-without-at-meta delta-aggregate)))
(define old-routing-table (mux-routing-table old-m))
(define new-routing-table (mux-routing-table new-m))
(define affected-pids

View File

@ -20,6 +20,7 @@
label-patch
limit-patch
limit-patch/routing-table
patch-without-at-meta
only-meta-tset
compute-aggregate-patch
apply-patch
@ -134,6 +135,12 @@
(trie-intersect out bound
#:combiner (lambda (v1 v2) (empty-tset-guard (tset-intersect v1 v2))))))
;; Removes at-meta assertions from the given patch.
(define (patch-without-at-meta p)
(match-define (patch added removed) p)
(patch (trie-prune-branch added at-meta-parenthesis)
(trie-prune-branch removed at-meta-parenthesis)))
(define only-meta-tset (datum-tset 'meta))
;; Entries labelled with `label` may already exist in `base`; the