Module: SchemaPlus::Views::Middleware::Dumper::Tables

Defined in:
lib/schema_plus/views/middleware.rb

Defined Under Namespace

Classes: View

Instance Method Summary collapse

Instance Method Details

#after(env) ⇒ Object

Dump views



8
9
10
11
12
13
14
15
16
# File 'lib/schema_plus/views/middleware.rb', line 8

def after(env)
  re_view_referent = %r{(?:(?i)FROM|JOIN) \S*\b(\S+)\b}
  env.connection.views.each do |view_name|
    next if env.dumper.ignored?(view_name)
    view = View.new(name: view_name, definition: env.connection.view_definition(view_name))
    env.dump.tables[view.name] = view
    env.dump.depends(view.name, view.definition.scan(re_view_referent).flatten)
  end
end