Sha256: 762474f0b238885583281eb4020be48d022c42625a617a238da1a96182a40585
Contents?: true
Size: 715 Bytes
Versions: 6
Compression:
Stored size: 715 Bytes
Contents
# backtick_javascript: true require 'opal-parser' module Kernel def __prepare_require__(path) name = `Opal.normalize(#{path})` full_path = name.end_with?('.rb') ? name : name + '.rb' if `!Opal.modules[#{name}]` ruby = File.read(full_path) compiler = Opal::Compiler.new(ruby, requirable: true, file: name) js = compiler.compile compiler.requires.each do |sub_path| __prepare_require__(sub_path) end `eval(#{js})` end name rescue => e raise [path, name, full_path].inspect + e.message end def require(path) `Opal.require(#{__prepare_require__(path)})` end def load(path) `Opal.load(#{__prepare_require__(path)})` end end
Version data entries
6 entries across 6 versions & 1 rubygems