Method: ActiveLdap::GetText::Parser#parse

Defined in:
lib/active_ldap/get_text/parser.rb

#parse(file, targets = []) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/active_ldap/get_text/parser.rb', line 17

def parse(file, targets=[])
  targets = RubyParser.parse(file, targets) if RubyParser.target?(file)
  extract(targets) do
    load_constants(file).each do |name|
      klass = name.constantize
      next unless klass.is_a?(Class)
      next unless klass < ActiveLdap::Base
      register(klass.name.singularize.underscore.gsub(/_/, " "), file)
      next unless @extract_schema
      klass.classes.each do |object_class|
        register_object_class(object_class, file)
      end
    end
  end
end