Sha256: 56198488733a89529269862ebc07e19cd22ea86291cbaed8b5674deb1f25d065

Contents?: true

Size: 513 Bytes

Versions: 3

Compression:

Stored size: 513 Bytes

Contents

module Remont
  class Script
    # @path [String] path
    def initialize(path)
      @path = path
      @schemas = []
    end

    # @return [Object]
    def run!
      instance_eval(File.read(path))

      schemas.each(&:process!)
    end

    # @param [Hash] opts
    # @option [Proc] :model
    # @option [Proc] :scope
    # @param [Proc] block
    # @return [Remont::Schema]
    def schema(...)
      @schemas << Schema.new(...)
    end

    private

    attr_reader :schemas
    attr_reader :path
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
remont-0.1.2 lib/remont/script.rb
remont-0.1.1 lib/remont/script.rb
remont-0.1.0 lib/remont/script.rb