Class: Coradoc::AsciiDoc::Serializer::Serializers::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/coradoc/asciidoc/serializer/serializers/base.rb

Overview

Base serializer class for converting Coradoc models to AsciiDoc format. Provides common serialization infrastructure and helpers. Each model type should have its own serializer that inherits from this.

Instance Method Summary collapse

Instance Method Details

#serialize(model, options_or_context = {}) ⇒ String

Serialize a Coradoc model to AsciiDoc string

Parameters:

Returns:

  • (String)

    AsciiDoc representation



17
18
19
20
21
22
# File 'lib/coradoc/asciidoc/serializer/serializers/base.rb', line 17

def serialize(model, options_or_context = {})
  return '' if model.nil?

  context = SerializationContext.from_options(options_or_context)
  to_adoc(model, context)
end

#to_adoc(_model, options_or_context = {}) ⇒ String

Abstract method to be implemented by subclasses

Parameters:

Returns:

  • (String)

    AsciiDoc representation

Raises:

  • (NotImplementedError)


28
29
30
31
32
# File 'lib/coradoc/asciidoc/serializer/serializers/base.rb', line 28

def to_adoc(_model, options_or_context = {})
  SerializationContext.from_options(options_or_context)
  raise NotImplementedError,
        "#{self.class.name} must implement #to_adoc"
end