Module: Farce::Abstract

Defined in:
lib/farce/abstract.rb,
lib/farce/abstract/map.rb,
lib/farce/abstract/set.rb,
lib/farce/abstract/atom.rb,
lib/farce/abstract/flag.rb,
lib/farce/abstract/lazy.rb,
lib/farce/abstract/port.rb,
lib/farce/abstract/lease.rb,
lib/farce/abstract/queue.rb,
lib/farce/abstract/value.rb,
lib/farce/abstract/vector.rb,
lib/farce/abstract/counter.rb,
lib/farce/abstract/lfu_map.rb,
lib/farce/abstract/lru_map.rb,
lib/farce/abstract/molecule.rb,
lib/farce/abstract/tree_map.rb,
lib/farce/abstract/weak_map.rb,
lib/farce/abstract/weak_set.rb,
lib/farce/abstract/exchanger.rb,
lib/farce/abstract/lease_map.rb,
lib/farce/abstract/scheduler.rb,
lib/farce/abstract/weak_atom.rb,
lib/farce/abstract/collection.rb,
lib/farce/abstract/lease_pool.rb,
lib/farce/abstract/sorted_set.rb,
lib/farce/abstract/bounded_map.rb,
lib/farce/abstract/timer_queue.rb,
lib/farce/abstract/weak_key_map.rb,
lib/farce/abstract/concurrent_map.rb,
lib/farce/abstract/duplicable_map.rb,
lib/farce/abstract/priority_queue.rb,
lib/farce/abstract/weak_value_map.rb,
lib/farce/integrations/active_support/map.rb,
lib/farce/integrations/active_support/set.rb,
lib/farce/integrations/active_support/blank.rb,
lib/farce/integrations/active_support/vector.rb,
lib/farce/integrations/active_support/duplicable.rb

Overview

Module holding abstract versions of classes that have multiple public implementations.

Subclasses of these can be found under the following namespaces:

  • Farce - for Ractor-shareable implementations
  • Local - implementations scoped by Ractor/Thread/Fiber/etc
  • Strict - for Ractor-shareable implementations accepting only shareable values
  • Unshared - for Ractor-unshareable implementations
  • Unsafe – for implementations that are not thread-safe

Defined Under Namespace

Modules: Counter, DuplicableMap, Flag, Port, Value Classes: Atom, BoundedMap, Collection, ConcurrentMap, Exchanger, LFUMap, LRUMap, Lazy, Lease, LeaseMap, LeasePool, Map, Molecule, PriorityQueue, Queue, Scheduler, Set, SortedSet, TimerQueue, TreeMap, Vector, WeakAtom, WeakKeyMap, WeakMap, WeakSet, WeakValueMap