Class: Slamdown::Conversion::Rendering::EntityEncoder

Inherits:
Object
  • Object
show all
Defined in:
lib/slamdown/conversion/rendering/entity_encoder.rb

Overview

Converts parsed entity-like leaves according to the selected symbolic, character or numeric output policy.

Instance Method Summary collapse

Constructor Details

#initialize(mode) ⇒ EntityEncoder

Returns a new instance of EntityEncoder.



9
10
11
# File 'lib/slamdown/conversion/rendering/entity_encoder.rb', line 9

def initialize(mode)
	@mode = mode
end

Instance Method Details

#character(node) ⇒ Object



17
18
19
# File 'lib/slamdown/conversion/rendering/entity_encoder.rb', line 17

def character(node)
	entity_values(node)[:character]
end

#character_mode?Boolean

Returns:

  • (Boolean)


13
14
15
# File 'lib/slamdown/conversion/rendering/entity_encoder.rb', line 13

def character_mode?
	@mode == :character
end

#encode(node) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
# File 'lib/slamdown/conversion/rendering/entity_encoder.rb', line 21

def encode(node)
	values = entity_values(node)
	case @mode
	when :character
		values[:character]
	when :numeric
		"&##{values[:code_point]};"
	else
		values[:name] ? "&#{values[:name]};" : "&##{values[:code_point]};"
	end
end