summaryrefslogtreecommitdiffstats
path: root/web/server/h2o/libh2o/deps/mruby/mrblib/kernel.rb
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--web/server/h2o/libh2o/deps/mruby/mrblib/kernel.rb50
1 files changed, 50 insertions, 0 deletions
diff --git a/web/server/h2o/libh2o/deps/mruby/mrblib/kernel.rb b/web/server/h2o/libh2o/deps/mruby/mrblib/kernel.rb
new file mode 100644
index 00000000..550ae817
--- /dev/null
+++ b/web/server/h2o/libh2o/deps/mruby/mrblib/kernel.rb
@@ -0,0 +1,50 @@
+##
+# Kernel
+#
+# ISO 15.3.1
+module Kernel
+
+ # 15.3.1.2.1 Kernel.`
+ # provided by Kernel#`
+ # 15.3.1.3.5
+ def `(s)
+ raise NotImplementedError.new("backquotes not implemented")
+ end
+
+ ##
+ # 15.3.1.2.3 Kernel.eval
+ # 15.3.1.3.12 Kernel#eval
+ # NotImplemented by mruby core; use mruby-eval gem
+
+ ##
+ # ISO 15.3.1.2.8 Kernel.loop
+ # provided by Kernel#loop
+
+ ##
+ # Calls the given block repetitively.
+ #
+ # ISO 15.3.1.3.29
+ def loop(&block)
+ return to_enum :loop unless block
+
+ while true
+ yield
+ end
+ rescue StopIteration => e
+ e.result
+ end
+
+ # 11.4.4 Step c)
+ def !~(y)
+ !(self =~ y)
+ end
+
+ # internal method for inspect
+ def _inspect
+ self.inspect
+ end
+
+ def to_enum(*a)
+ raise NotImplementedError.new("fiber required for enumerator")
+ end
+end