[前][次][番号順一覧][スレッド一覧]

ruby-changes:58968

From: Hiroshi <ko1@a...>
Date: Sat, 30 Nov 2019 10:29:53 +0900 (JST)
Subject: [ruby-changes:58968] f47f2076fe (master): Retire to maintain e2mmap on ruby core

https://git.ruby-lang.org/ruby.git/commit/?id=f47f2076fe

From f47f2076fed1546d993a376ce3c35ca81b1f0c6a Mon Sep 17 00:00:00 2001
From: Hiroshi SHIBATA <hsbt@r...>
Date: Wed, 27 Nov 2019 12:17:03 +0900
Subject: Retire to maintain e2mmap on ruby core


diff --git a/lib/e2mmap.rb b/lib/e2mmap.rb
deleted file mode 100644
index 1c1d714..0000000
--- a/lib/e2mmap.rb
+++ /dev/null
@@ -1,177 +0,0 @@ https://github.com/ruby/ruby/blob/trunk/#L0
-# frozen_string_literal: true
-#
-#--
-#   e2mmap.rb - for Ruby 1.1
-#       $Release Version: 2.0$
-#       $Revision: 1.10 $
-#       by Keiju ISHITSUKA
-#
-#++
-#
-# Helper module for easily defining exceptions with predefined messages.
-#
-# == Usage
-#
-# 1.
-#   class Foo
-#     extend Exception2MessageMapper
-#     def_e2message ExistingExceptionClass, "message..."
-#     def_exception :NewExceptionClass, "message..."[, superclass]
-#     ...
-#   end
-#
-# 2.
-#   module Error
-#     extend Exception2MessageMapper
-#     def_e2message ExistingExceptionClass, "message..."
-#     def_exception :NewExceptionClass, "message..."[, superclass]
-#     ...
-#   end
-#   class Foo
-#     include Error
-#     ...
-#   end
-#
-#   foo = Foo.new
-#   foo.Fail ....
-#
-# 3.
-#   module Error
-#     extend Exception2MessageMapper
-#     def_e2message ExistingExceptionClass, "message..."
-#     def_exception :NewExceptionClass, "message..."[, superclass]
-#     ...
-#   end
-#   class Foo
-#     extend Exception2MessageMapper
-#     include Error
-#     ...
-#   end
-#
-#   Foo.Fail NewExceptionClass, arg...
-#   Foo.Fail ExistingExceptionClass, arg...
-#
-#
-module Exception2MessageMapper
-
-  E2MM = Exception2MessageMapper # :nodoc:
-
-  def E2MM.extend_object(cl)
-    super
-    cl.bind(self) unless cl < E2MM
-  end
-
-  def bind(cl)
-    self.module_eval "#{<<-"begin;"}\n#{<<-"end;"}", __FILE__, __LINE__+1
-    begin;
-      def Raise(err = nil, *rest)
-        Exception2MessageMapper.Raise(self.class, err, *rest)
-      end
-      alias Fail Raise
-
-      class << self
-        undef included
-      end
-      def self.included(mod)
-        mod.extend Exception2MessageMapper
-      end
-    end;
-  end
-
-  # Fail(err, *rest)
-  #     err:    exception
-  #     rest:   message arguments
-  #
-  def Raise(err = nil, *rest)
-    E2MM.Raise(self, err, *rest)
-  end
-  alias Fail Raise
-  alias fail Raise
-
-  # def_e2message(c, m)
-  #         c:  exception
-  #         m:  message_form
-  #     define exception c with message m.
-  #
-  def def_e2message(c, m)
-    E2MM.def_e2message(self, c, m)
-  end
-
-  # def_exception(n, m, s)
-  #         n:  exception_name
-  #         m:  message_form
-  #         s:  superclass(default: StandardError)
-  #     define exception named ``c'' with message m.
-  #
-  def def_exception(n, m, s = StandardError)
-    E2MM.def_exception(self, n, m, s)
-  end
-
-  #
-  # Private definitions.
-  #
-  # {[class, exp] => message, ...}
-  @MessageMap = {}
-
-  # E2MM.def_e2message(k, e, m)
-  #         k:  class to define exception under.
-  #         e:  exception
-  #         m:  message_form
-  #     define exception c with message m.
-  #
-  def E2MM.def_e2message(k, c, m)
-    E2MM.instance_eval{@MessageMap[[k, c]] = m}
-    c
-  end
-
-  # E2MM.def_exception(k, n, m, s)
-  #         k:  class to define exception under.
-  #         n:  exception_name
-  #         m:  message_form
-  #         s:  superclass(default: StandardError)
-  #     define exception named ``c'' with message m.
-  #
-  def E2MM.def_exception(k, n, m, s = StandardError)
-    e = Class.new(s)
-    E2MM.instance_eval{@MessageMap[[k, e]] = m}
-    k.module_eval {remove_const(n)} if k.const_defined?(n, false)
-    k.const_set(n, e)
-  end
-
-  # Fail(klass, err, *rest)
-  #     klass:  class to define exception under.
-  #     err:    exception
-  #     rest:   message arguments
-  #
-  def E2MM.Raise(klass = E2MM, err = nil, *rest)
-    if form = e2mm_message(klass, err)
-      b = $@.nil? ? caller(1) : $@
-      b.shift if b[0] =~ /^#{Regexp.quote(__FILE__)}:/
-      raise err, sprintf(form, *rest), b
-    else
-      E2MM.Fail E2MM, ErrNotRegisteredException, err.inspect
-    end
-  end
-  class << E2MM
-    alias Fail Raise
-  end
-
-  def E2MM.e2mm_message(klass, exp)
-    for c in klass.ancestors
-      if mes = @MessageMap[[c,exp]]
-        m = klass.instance_eval('"' + mes + '"')
-        return m
-      end
-    end
-    nil
-  end
-  class << self
-    alias message e2mm_message
-  end
-
-  E2MM.def_exception(E2MM,
-                     :ErrNotRegisteredException,
-                     "not registered exception(%s)")
-end
-
-
diff --git a/lib/e2mmap/e2mmap.gemspec b/lib/e2mmap/e2mmap.gemspec
deleted file mode 100644
index fc3efde..0000000
--- a/lib/e2mmap/e2mmap.gemspec
+++ /dev/null
@@ -1,26 +0,0 @@ https://github.com/ruby/ruby/blob/trunk/#L0
-begin
-  require_relative "lib/e2mmap/version"
-rescue LoadError
-  # for Ruby core repository
-  require_relative "version"
-end
-
-Gem::Specification.new do |spec|
-  spec.name          = "e2mmap"
-  spec.version       = Exception2MessageMapper::VERSION
-  spec.authors       = ["Keiju ISHITSUKA"]
-  spec.email         = ["keiju@r..."]
-
-  spec.summary       = %q{Module for defining custom exceptions with specific messages.}
-  spec.description   = %q{Module for defining custom exceptions with specific messages.}
-  spec.homepage      = "https://github.com/ruby/e2mmap"
-  spec.license       = "BSD-2-Clause"
-
-  spec.files         = [".gitignore", "Gemfile", "LICENSE.txt", "README.md", "Rakefile", "bin/console", "bin/setup", "e2mmap.gemspec", "lib/e2mmap.rb", "lib/e2mmap/version.rb"]
-  spec.bindir        = "exe"
-  spec.executables   = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
-  spec.require_paths = ["lib"]
-
-  spec.add_development_dependency "bundler", "~> 1.16"
-  spec.add_development_dependency "rake", "~> 10.0"
-end
diff --git a/lib/e2mmap/version.rb b/lib/e2mmap/version.rb
deleted file mode 100644
index c459aea..0000000
--- a/lib/e2mmap/version.rb
+++ /dev/null
@@ -1,3 +0,0 @@ https://github.com/ruby/ruby/blob/trunk/#L0
-module Exception2MessageMapper
-  VERSION = "0.1.0"
-end
-- 
cgit v0.10.2


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]