def register(*objects)
objects.flatten.each do |object|
next unless object.is_a?(CodeObjects::Base)
begin
ensure_loaded!(object.namespace)
object.namespace.children << object
rescue NamespaceMissingError
end
yield(object) if block_given?
object.add_file(parser.file, statement.line, statement.comments)
object.docstring = statement.comments if statement.comments
object.docstring.line_range = statement.comments_range
unless object.is_a?(NamespaceObject)
object.source ||= statement
end
object.dynamic = true if owner != namespace
end
objects.size == 1 ? objects.first : objects
end