[elephant-devel] Given the OID, can one obtain the object's slot value without recreating the object?

Ian Eslick eslick at media.mit.edu
Thu Jan 29 21:12:04 UTC 2009


Use map-inverse-index :oid t to get the list of oids matching  
parameter A
Use map-inverse-index :oid t to get the list of oids matching  
parameter B
Take the intersection of the OIDs
Recreate your objects.

And in fact this is exactly what the query system does and should just  
to the right thing for you already (though with some extra temporary  
memory overhead at the moment).  I'm blanking on the syntax, but it  
looks something like this:

(select ((a object))
   (eq (slot1 a) 'foo)
   (eq (slot2 a) 'bar))

Ian


On Jan 28, 2009, at 3:33 PM, Yarek Kowalik wrote:

> Given the OID, Is there a way to obtain an object slot value without  
> recreating the object?  I want to reacreate the object only when a  
> specific value is present.
>
> I am aware that I could use map-inverse-index to search for value,  
> but it  does not do exacty what I want:  I want to get all the  
> objects with slot 'a matching "value-a", but filtered on another  
> slot, say slot 'b, with matching "value-b".
>
> Yarek
> _______________________________________________
> elephant-devel site list
> elephant-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/elephant-devel





More information about the elephant-devel mailing list