Sha256: 680f812d429c1054756421a499f058373e425000522a1b1d2c2fb3d6a162ec8d

Contents?: true

Size: 604 Bytes

Versions: 1

Compression:

Stored size: 604 Bytes

Contents

class RunParser
  require 'execjs'

  def parse(code)
    raise 'Must implement!'
  end
end

###

class RubyParser < RunParser
  def parse(code)
    begin
      eval(code)
    rescue Exception => ex
      raise ex.message
    end
  end
end

###

class HTMLParser < RunParser
  def parse(code)
    code
  end
end

###

class JAVASCRIPTParser < RunParser
  def parse(code)
    ExecJS.eval('"red yellow blue".split(" ")')
  end
end

###

class CodeParser
  attr_reader :code, :parser

  def initialize(code, parser)
    @code = code
    @parser = parser
  end

  def parse
    parser.parse(code)
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
idecoder-0.1.2 app/runners_strategy.rb