Which interchange concepts a document uses, how often, and where. More...
#include <census.hpp>
Public Member Functions | |
| bool | contains (Concept concept_value) const noexcept |
| std::uint64_t | count (Concept concept_value) const noexcept |
| std::span< const timeline::ItemId > | owners (Concept concept_value) const noexcept |
| Up to CensusLimits::max_owners_per_concept ids of the items that carry the concept. | |
| std::vector< Concept > | present () const |
| Concepts recorded at least once, in vocabulary order. | |
| bool | empty () const noexcept |
| void | record (Concept concept_value, timeline::ItemId owner, const CensusLimits &limits) |
| Record one sighting. | |
Which interchange concepts a document uses, how often, and where.
One walker serves every format. Formats differ in what they can carry, not in what a document contains, so the walk happens once and each format's capability table is applied to the same result.
|
noexcept |
|
noexcept |
|
noexcept |
|
noexcept |
Up to CensusLimits::max_owners_per_concept ids of the items that carry the concept.
May be shorter than count().
| std::vector< Concept > pulp::interchange::ConceptCensus::present | ( | ) | const |
Concepts recorded at least once, in vocabulary order.
| void pulp::interchange::ConceptCensus::record | ( | Concept | concept_value, |
| timeline::ItemId | owner, | ||
| const CensusLimits & | limits ) |
Record one sighting.
Readers tag constructs with this as they recognize them; the walker below uses it for documents already in the model.