Module: Coradoc::Reference::Catalog::Protocol

Included in:
Composite, Local
Defined in:
lib/coradoc/reference/catalog.rb

Overview

Protocol methods every Catalog must answer. Implementations may include this module for documentation only; the protocol is duck-typed but explicit at the type-check sites via these method names.

Instance Method Summary collapse

Instance Method Details

#each_pairObject

Enumerate every (Address, Content) pair this catalog knows.

Raises:

  • (NotImplementedError)


25
# File 'lib/coradoc/reference/catalog.rb', line 25

def each_pair(&) = raise(NotImplementedError)

#lookup(address) ⇒ Object

Resolve address to a Content node (CoreModel::Base) or nil.

Raises:

  • (NotImplementedError)


22
# File 'lib/coradoc/reference/catalog.rb', line 22

def lookup(address) = raise(NotImplementedError)

#recognizes_scheme?(scheme) ⇒ Boolean

Does this catalog index addresses of the given scheme? Used by composite catalogs to skip irrelevant children.

Returns:

  • (Boolean)

Raises:

  • (NotImplementedError)


29
# File 'lib/coradoc/reference/catalog.rb', line 29

def recognizes_scheme?(scheme) = raise(NotImplementedError)