class Ceres::Attribute::DSL

Public Class Methods

new(object, &block) click to toggle source
# File lib/ceres/attribute.rb, line 49
def initialize(object, &block)
  @object = object

  self.instance_exec(&block) if block
end

Public Instance Methods

description(text) click to toggle source
# File lib/ceres/attribute.rb, line 55
def description(text)
  @object.description = text
end
inspector(disabled: false, &block) click to toggle source
# File lib/ceres/attribute.rb, line 79
def inspector(disabled: false, &block)
  inspector = Ceres::Inspector.new(&block) unless disabled

  @object.inspector = inspector
end
reader(disabled: false, **args, &block) click to toggle source
# File lib/ceres/attribute.rb, line 67
def reader(disabled: false, **args, &block)
  reader = Ceres::Reader.new(@object, **args, &block) unless disabled

  @object.reader = reader
end
target(symbol) click to toggle source
# File lib/ceres/attribute.rb, line 59
def target(symbol)
  @object.target = symbol
end
variable(symbol) click to toggle source
# File lib/ceres/attribute.rb, line 63
def variable(symbol)
  @object.variable = symbol
end
writer(disabled: false, &block) click to toggle source
# File lib/ceres/attribute.rb, line 73
def writer(disabled: false, &block)
  writer = Ceres::Writer.new(@object, &block) unless disabled

  @object.writer = writer
end