class HecksDomain::Parser

Attributes

aggregates[R]
factory_loader[R]
name[R]
repository_helper[R]
spec_helper[R]
string_support[R]

Public Class Methods

new(name, &block) click to toggle source
# File lib/hecks/domain/parser.rb, line 17
def initialize(name, &block)
  @name = name
  @aggregates = []
  @domain_version = nil
  instance_eval(&block)
end

Public Instance Methods

aggregate(name, &block) click to toggle source
# File lib/hecks/domain/parser.rb, line 59
def aggregate(name, &block)
  @aggregates << Aggregate.new(name, self, &block)
end
authors(value) click to toggle source
# File lib/hecks/domain/parser.rb, line 47
def authors(value)
  @authors = value
end
binding() click to toggle source
Calls superclass method
# File lib/hecks/domain/parser.rb, line 63
def binding
  super
end
description(value) click to toggle source
# File lib/hecks/domain/parser.rb, line 28
def description(value)
  @description = value
end
domain_version(value) click to toggle source
# File lib/hecks/domain/parser.rb, line 75
def domain_version(value)
  @domain_version = value
end
email(value) click to toggle source
# File lib/hecks/domain/parser.rb, line 51
def email(value)
  @email = value
end
file_name() click to toggle source
# File lib/hecks/domain/parser.rb, line 67
def file_name
  @file_name = folder_name + '.rb'
end
folder_name() click to toggle source
# File lib/hecks/domain/parser.rb, line 71
def folder_name
  @folder_name = @name.to_s.underscore
end
for_each_domain_object() { |aggregate, domain_object| ... } click to toggle source
# File lib/hecks/domain/parser.rb, line 79
def for_each_domain_object
  aggregates.each do |aggregate|
    aggregate.domain_objects.each do |domain_object|
      yield aggregate, domain_object
    end
  end
end
for_each_operation() { |aggregate, domain_object, operation| ... } click to toggle source
# File lib/hecks/domain/parser.rb, line 87
def for_each_operation
  for_each_domain_object do |aggregate, domain_object|
    domain_object.operations_get.each do |operation|
      yield aggregate, domain_object, operation
    end
  end
end
gemspec() click to toggle source
# File lib/hecks/domain/parser.rb, line 36
def gemspec
  {
    summary: @summary,
    description: @description,
    version: @version,
    authors: @authors,
    email: @email,
    homepage: @homepage
  }
end
homepage(value) click to toggle source
# File lib/hecks/domain/parser.rb, line 55
def homepage(value)
  @homepage = value
end
summary(value) click to toggle source
# File lib/hecks/domain/parser.rb, line 24
def summary(value)
  @summary = value
end
version(value) click to toggle source
# File lib/hecks/domain/parser.rb, line 32
def version(value)
  @version = value
end