| Module | Ruva::VM::Class::AccessHelpers |
| In: |
lib/ruva/class.rb
|
Provides a set of helper methods for working with class/method/field access, e.g.
public? static? protected? etc.
The only thing it needs is an ‘access’ method. Just include it and it‘ll define methods for all the ACC_XXXX consts defined in the class.
# File lib/ruva/class.rb, line 191
191: def self.included(clz)
192: clz.constants.each do |const|
193: if const =~ /^ACC_(.*)$/
194: clz.class_eval %(
195: def #{$1.downcase}?
196: if access & ACC_#{$1} == ACC_#{$1}
197: class << self; def #{$1.downcase}?; true; end; end
198: true
199: else
200: class << self; def #{$1.downcase}?; false; end; end
201: false
202: end
203: end
204: )
205: end
206: end
207: end