class

Asciidoctor::Extensions::Registry

Inherits Reference < Object

The primary entry point into the extension system.

Registry holds the extensions which have been registered and activated, has methods for registering a processor and looks up extensions stored in the registry during parsing.

NOTE: In Crystal, the block/macro extension hashes use String keys instead of Symbol keys because Crystal symbols are compile-time constants and cannot be created dynamically from runtime strings.

Constructors

new(groups : Hash(Symbol, Group.class | Group) = {} of Symbol => Group.class | Group)
Source

Instance methods

activate(document : Document) : self

Activate all the global extension Groups and the extension Groups associated with this registry.

Source
block(processor : BlockProcessor, name : String | Nil = nil) : ProcessorExtension

Register a BlockProcessor.

Source
block_extensions
Source
block_macro(processor : BlockMacroProcessor, name : String | Nil = nil) : ProcessorExtension

Register a BlockMacroProcessor.

Source
block_macro_extensions
Source
block_macros?

Check whether any BlockMacroProcessor extensions have been registered.

Source
blocks?

Check whether any BlockProcessor extensions have been registered.

Source
docinfo_processor(processor : DocinfoProcessor) : ProcessorExtension

Register a DocinfoProcessor.

Source
docinfo_processor_extensions
Source
docinfo_processors(location : Symbol | Nil = nil) : Array(ProcessorExtension)

Retrieve DocinfoProcessor extensions, optionally filtered by location.

Source
docinfo_processors?(location : Symbol | Nil = nil) : Bool

Check whether any DocinfoProcessor extensions have been registered.

Source
document

The Document on which the extensions in this registry are being used.

Source
find_block_extension(name : String) : ProcessorExtension | Nil

Find a BlockProcessor extension by name.

Source
find_block_macro_extension(name : String) : ProcessorExtension | Nil

Find a BlockMacroProcessor extension by name.

Source
find_inline_macro_extension(name : String) : ProcessorExtension | Nil

Find an InlineMacroProcessor extension by name.

Source
groups

The Hash of Group classes or instances that have been registered.

Source
include_processor(processor : IncludeProcessor) : ProcessorExtension

Register an IncludeProcessor.

Source
include_processor_extensions
Source
include_processors

Retrieve IncludeProcessor extensions.

Source
include_processors?

Check whether any IncludeProcessor extensions have been registered.

Source
inline_macro(processor : InlineMacroProcessor, name : String | Nil = nil) : ProcessorExtension

Register an InlineMacroProcessor.

Source
inline_macro_extensions
Source
inline_macros

Retrieve all InlineMacroProcessor extensions.

Source
inline_macros?

Check whether any InlineMacroProcessor extensions have been registered.

Source
postprocessor(processor : Postprocessor) : ProcessorExtension

Register a Postprocessor.

Source
postprocessor_extensions
Source
postprocessors

Retrieve Postprocessor extensions.

Source
postprocessors?

Check whether any Postprocessor extensions have been registered.

Source
preprocessor(processor : Preprocessor) : ProcessorExtension

Register a Preprocessor.

Source
preprocessor_extensions

Extension stores for each processor type.

Source
preprocessors

Retrieve Preprocessor extensions.

Source
preprocessors?

Check whether any Preprocessor extensions have been registered.

Source
registered_for_block?(name : String, context : Symbol) : ProcessorExtension | Bool

Check whether a BlockProcessor is registered for the given name and context.

Source
registered_for_block_macro?(name : String) : ProcessorExtension | Bool

Check whether a BlockMacroProcessor is registered for the given name.

Source
registered_for_inline_macro?(name : String) : ProcessorExtension | Bool

Check whether an InlineMacroProcessor is registered for the given name.

Source
tree_processor(processor : TreeProcessor) : ProcessorExtension

Register a TreeProcessor.

Source
tree_processor_extensions
Source
tree_processors

Retrieve TreeProcessor extensions.

Source
tree_processors?

Check whether any TreeProcessor extensions have been registered.

Source