【发布时间】:2010-08-31 19:43:21
【问题描述】:
除了 ruby 之外,有没有类似 boost::multi_index 的东西。基本上拿了一些 对象容器,并使用 N 种不同的查询方法对 N 种不同的方法进行索引。
我猜你可以将 DataMapper 与内存数据库中的 SQLite 一起使用,但我是 想知道周围有没有纯红宝石。
下面是一个想象的例子,说明这种类型的类可能会做什么。看起来很 很像一个数据库。
class Foo
attr_accessor :a
attr_accessor :b
attr_accessor :c
end
class FooIndexer < MultiIndex
hash_index :a do |o|
o.a
end
ordered_index :b do |x, y|
x.b <=> y.b
end
end
index = FooIndexer.new
index.insert( Foo.new ( ... ))
index.insert( Foo.new ( ... ))
index.insert( Foo.new ( ... ))
index.insert( Foo.new ( ... ))
index.insert( Foo.new ( ... ))
index.find ( index.a == 10 )
index.find ( index.b > 10 )
【问题讨论】:
-
也许你可以举一个 boost::multi_index 的例子?
标签: ruby boost multi-index