Files
news.gitea.happylizard.me/bin/gems/facets-3.1.0/lib/standard/facets/instantiable.rb
T
pizza2d1 4cee170d66
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 9s
Add bin and edit workflow
2026-09-16 13:11:16 -06:00

26 lines
439 B
Ruby

# = Instantiable
#
# Initialize modules, almost as if they were classes.
#
# Alows a module to be used much like a class, by defining
# a #new method that creates a class on demand.
#
module Instantiable
def self.append_features(mod)
mod.extend self
end
# Never use a class again! ;)
def new(*args,&blk)
mod = self
@instantiable_class ||= Class.new{include mod}
@instantiable_class.new(*args,&blk)
end
end