Class: Riak::Crdt::GrowOnlySet::BatchGrowOnlySet
- Defined in:
- lib/riak/crdt/grow_only_set.rb
Direct Known Subclasses
Instance Method Summary collapse
- #add(element) ⇒ Object
- #context? ⇒ Boolean
- #empty? ⇒ Boolean
- #include?(element) ⇒ Boolean
-
#initialize(base) ⇒ BatchGrowOnlySet
constructor
A new instance of BatchGrowOnlySet.
- #members ⇒ Object (also: #value)
- #operations ⇒ Object
- #to_a ⇒ Object
Constructor Details
#initialize(base) ⇒ BatchGrowOnlySet
Returns a new instance of BatchGrowOnlySet.
120 121 122 123 |
# File 'lib/riak/crdt/grow_only_set.rb', line 120 def initialize(base) @base = base @adds = ::Set.new end |
Instance Method Details
#add(element) ⇒ Object
125 126 127 |
# File 'lib/riak/crdt/grow_only_set.rb', line 125 def add(element) @adds.add element end |
#context? ⇒ Boolean
137 138 139 |
# File 'lib/riak/crdt/grow_only_set.rb', line 137 def context? @base.context? end |
#empty? ⇒ Boolean
133 134 135 |
# File 'lib/riak/crdt/grow_only_set.rb', line 133 def empty? members.empty? end |
#include?(element) ⇒ Boolean
129 130 131 |
# File 'lib/riak/crdt/grow_only_set.rb', line 129 def include?(element) members.include? element end |
#members ⇒ Object Also known as: value
145 146 147 |
# File 'lib/riak/crdt/grow_only_set.rb', line 145 def members @base + @adds end |
#operations ⇒ Object
151 152 153 154 155 156 |
# File 'lib/riak/crdt/grow_only_set.rb', line 151 def operations Operation::Update.new.tap do |op| op.type = :gset op.value = {add: @adds.to_a} end end |
#to_a ⇒ Object
141 142 143 |
# File 'lib/riak/crdt/grow_only_set.rb', line 141 def to_a members.to_a end |