class PGTrunk::Operations::Views::RenameView

@private

Public Instance Methods

invert() click to toggle source
# File lib/pg_trunk/operations/views/rename_view.rb, line 41
def invert
  irreversible!("if_exists: true") if if_exists
  self.class.new(**to_h, name: new_name, to: name)
end
to_sql(_version) click to toggle source
# File lib/pg_trunk/operations/views/rename_view.rb, line 37
def to_sql(_version)
  [*change_schema, *change_name].join("; ")
end

Private Instance Methods

change_name() click to toggle source
# File lib/pg_trunk/operations/views/rename_view.rb, line 56
def change_name
  return if new_name.name == name.name

  moved = name.merge(schema: new_name.schema)
  sql = "ALTER VIEW"
  sql << " IF EXISTS" if if_exists
  sql << " #{moved.to_sql} RENAME TO #{new_name.name.inspect};"
end
change_schema() click to toggle source
# File lib/pg_trunk/operations/views/rename_view.rb, line 48
def change_schema
  return if name.schema == new_name.schema

  sql = "ALTER VIEW"
  sql << " IF EXISTS" if if_exists
  sql << " #{name.to_sql} SET SCHEMA #{new_name.schema.inspect};"
end