Method: Module#inline

Defined in:
lib/inline.rb

#inline(lang = :C, options = {}) {|builder| ... } ⇒ Object

Extends the Module class to have an inline method. The default language/builder used is C, but can be specified with the lang parameter.

Yields:

  • (builder)


840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
# File 'lib/inline.rb', line 840

def inline(lang = :C, options={})
  Inline.register self

  require "inline/#{lang}" unless Inline.const_defined? lang

  builder_class = Inline.const_get lang

  builder = builder_class.new self

  yield builder

  unless options[:testing] then
    unless builder.load_cache then
      builder.build
      builder.load
    end
  end
end