Class: Erbside::Cpp

Inherits:
Inline show all
Defined in:
lib/erbside/inline/cpp.rb

Overview

C/C++ Adapter

Constant Summary collapse

EXTENSIONS =
%w{ .c .cpp }

Constants inherited from Inline

Inline::TAG

Instance Attribute Summary

Attributes inherited from Inline

#context, #file, #result, #type

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Inline

#block_parts, #changed?, #content, #exist?, extension_list, factory, #format_block, #format_side, inherited, #initialize, #line_match, map, #output, register, #relative_output, #remarker_multiline, #render, #render_blocks, #render_result, #render_sides, #render_template, #save

Constructor Details

This class inherits a constructor from Erbside::Inline

Class Method Details

.extensionsObject



10
11
12
# File 'lib/erbside/inline/cpp.rb', line 10

def self.extensions
  EXTENSIONS
end

Instance Method Details

#block_matchObject



30
31
32
33
34
# File 'lib/erbside/inline/cpp.rb', line 30

def block_match
  b = Regexp.escape(remarker_block_begin)
  e = Regexp.escape(remarker_block_end)
  %r{^(\s*)(#{b})(\s*)(:#{TAG})(\+\d*)?(\:)(\s*)((?m:.*?))(\s#{e})}
end

#remarkerObject



15
16
17
# File 'lib/erbside/inline/cpp.rb', line 15

def remarker
  '//'
end

#remarker_block_beginObject



20
21
22
# File 'lib/erbside/inline/cpp.rb', line 20

def remarker_block_begin
  '/*'
end

#remarker_block_endObject



25
26
27
# File 'lib/erbside/inline/cpp.rb', line 25

def remarker_block_end
  '*/'
end