# class WikiCloth::Extension

### Public Class Methods

new(options={}) click to toggle source

    # File lib/wikicloth/extension.rb, line 4
    def initialize(options={})
      @options = options
    end

### Public Instance Methods

element(*args,&block) click to toggle source

    # File lib/wikicloth/extension.rb, line 18
    def element(*args,&block)
      options  = args.last.is_a?(Hash) ? args.pop : {}
      key      = args.shift

      html_elements[key] = { :klass => self, :block => block, :options => {
        :skip_html => false, :run_globals => true }.merge(options) }
    end

element_exists?(elem) click to toggle source

    # File lib/wikicloth/extension.rb, line 36
    def element_exists?(elem)
      html_elements.has_key?(elem)
    end

function(name,&block) click to toggle source

    # File lib/wikicloth/extension.rb, line 40
    def function(name,&block)
      functions[name] = { :klass => self, :block => block }
    end

function_exists?(name) click to toggle source

    # File lib/wikicloth/extension.rb, line 44
    def function_exists?(name)
      functions.has_key?(name)
    end

functions() click to toggle source

    # File lib/wikicloth/extension.rb, line 14
    def functions
      @@functions ||= {}
    end

html_elements() click to toggle source

    # File lib/wikicloth/extension.rb, line 10
    def html_elements
      @@html_elements ||= {}
    end

run_globals?(elem) click to toggle source

    # File lib/wikicloth/extension.rb, line 31
    def run_globals?(elem)
      return false if !element_exists?(elem)
      html_elements[elem][:options][:run_globals]
    end

skip_html?(elem) click to toggle source

    # File lib/wikicloth/extension.rb, line 26
    def skip_html?(elem)
      return true if !element_exists?(elem)
      html_elements[elem][:options][:skip_html]
    end

### Protected Instance Methods

functions=(val) click to toggle source

    # File lib/wikicloth/extension.rb, line 53
    def functions=(val)
      @@functions = val
    end

html_elements=(val) click to toggle source

    # File lib/wikicloth/extension.rb, line 49
    def html_elements=(val)
      @@html_elements = val
    end