Sha256: 80896b52932e68ab41b2f1c276c413cacc469b7105867dbf9359551a51f070e0

Contents?: true

Size: 954 Bytes

Versions: 4

Compression:

Stored size: 954 Bytes

Contents

require 'avro/builder/version'
require 'avro/builder/dsl'
require 'avro/builder/schema_store'

module Avro
  module Builder

    # Accepts a string or block to eval and returns the Avro::Builder::DSL object
    def self.build_dsl(str = nil, filename: nil, &block)
      Avro::Builder::DSL.new(str, filename: filename, &block)
    end

    # Accepts a string or block to eval to define a JSON schema
    def self.build(str = nil, filename: nil, &block)
      Avro::Builder::DSL.new(str, filename: filename, &block).to_json
    end

    # Accepts a string or block to eval and returns an Avro::Schema object
    def self.build_schema(str = nil, filename: nil, &block)
      Avro::Builder::DSL.new(str, filename: filename, &block).as_schema
    end

    # Add paths that will be searched for definitions
    def self.add_load_path(*paths)
      Avro::Builder::DSL.load_paths.merge(paths)
    end
  end
end

require 'avro/builder/railtie' if defined?(Rails)

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
avro-builder-0.16.1 lib/avro/builder.rb
avro-builder-0.16.0 lib/avro/builder.rb
avro-builder-0.15.0 lib/avro/builder.rb
avro-builder-0.15.0.rc0 lib/avro/builder.rb