lib/nanoc/base/entities/context.rb in nanoc-4.8.18 vs lib/nanoc/base/entities/context.rb in nanoc-4.8.19

- old
+ new

@@ -49,10 +49,18 @@ end end def respond_to_missing?(method, include_all) ivar_name = '@' + method.to_s - instance_variable_defined?(ivar_name) || super + + valid_ivar_name = + if defined?(Contracts) + ivar_name =~ /\A@[A-Za-z_]+\z/ + else + true # probably good enough + end + + (valid_ivar_name && instance_variable_defined?(ivar_name)) || super end def include(mod) metaclass = class << self; self; end metaclass.instance_eval { include(mod) }