]> gitweb.factorcode.org Git - factor.git/blobdiff - extra/mongodb/tuple/state/state.factor
factor: trim using lists
[factor.git] / extra / mongodb / tuple / state / state.factor
index 21923637e5421ca1f8154afcec33a031f23139e8..8a569d19f8225bfc567e71fbf80019abdcc3bd1d 100644 (file)
@@ -1,24 +1,14 @@
-USING: classes kernel accessors sequences fry assocs mongodb.tuple.collection
-words classes.tuple slots generic ;
-
+USING: accessors assocs classes kernel sequences ;
 IN: mongodb.tuple.state
 
 <PRIVATE
 
 CONSTANT: MDB_TUPLE_INFO       "_mfd_t_info"
-CONSTANT: MDB_DIRTY_FLAG       "d?"
-CONSTANT: MDB_PERSISTENT_FLAG  "p?"
-CONSTANT: MDB_DIRTY_ADVICE     "mdb-dirty-set"
 
 PRIVATE>
 
-SYMBOL: mdb-dirty-handling?
-
-: advised-with? ( name word loc -- ? )
-   word-prop key? ; inline
-
 : <tuple-info> ( tuple -- tuple-info )
-    class V{ } clone tuck  
+    class-of [ V{ } clone ] dip over
     [ [ name>> ] dip push ]
     [ [ vocabulary>> ] dip push ] 2bi ; inline
 
@@ -30,23 +20,3 @@ SYMBOL: mdb-dirty-handling?
 
 : tuple-info? ( assoc -- ? )
    [ MDB_TUPLE_INFO ] dip key? ;
-
-: tuple-meta ( tuple -- assoc )
-   dup _mfd>> [ ] [ H{ } clone [ >>_mfd ] keep ] if* nip ; inline
-
-: dirty? ( tuple -- ? )
-   [ MDB_DIRTY_FLAG ] dip tuple-meta at ;
-
-: mark-dirty ( tuple -- )
-   [ t MDB_DIRTY_FLAG ] dip tuple-meta set-at ;
-
-: persistent? ( tuple -- ? )
-   [ MDB_PERSISTENT_FLAG ] dip tuple-meta at ;
-
-: mark-persistent ( tuple -- )
-   [ t MDB_PERSISTENT_FLAG ] dip tuple-meta [ set-at ] keep
-   [ f MDB_DIRTY_FLAG ] dip set-at ;
-
-: needs-store? ( tuple -- ? )
-   [ persistent? not ] [ dirty? ] bi or ;
-