module Fx

F(x) adds methods `ActiveRecord::Migration` to create and manage database triggers and functions in Rails applications.

Constants

VERSION

@api private

Public Class Methods

configuration() click to toggle source

@return [Fx::Configuration] F(x)'s current configuration

# File lib/fx.rb, line 30
def self.configuration
  @_configuration ||= Configuration.new
end
configuration=(config) click to toggle source

Set F(x)'s configuration

@param config [Fx::Configuration]

# File lib/fx.rb, line 37
def self.configuration=(config)
  @_configuration = config
end
configure() { |configuration| ... } click to toggle source

Modify F(x)'s current configuration

@yieldparam [Fx::Configuration] config current F(x) config “` Fx.configure do |config|

config.database = Fx::Adapters::Postgres
config.dump_functions_at_beginning_of_schema = true

end “`

# File lib/fx.rb, line 50
def self.configure
  yield configuration
end
database() click to toggle source

The current database adapter used by F(x).

This defaults to {Fx::Adapters::Postgres} but can be overridden via {Configuration}.

# File lib/fx.rb, line 58
def self.database
  configuration.database
end
load() click to toggle source

Hooks Fx into Rails.

Enables fx migration methods, migration reversability, and `schema.rb` dumping.

# File lib/fx.rb, line 21
def self.load
  ActiveRecord::Migration::CommandRecorder.include(Fx::CommandRecorder)
  ActiveRecord::ConnectionAdapters::AbstractAdapter.include(Fx::Statements)
  ActiveRecord::SchemaDumper.prepend(Fx::SchemaDumper)

  true
end