Class: Habdsl::Model::Dsl

Inherits:
Object
  • Object
show all
Defined in:
lib/habdsl/model/dsl.rb

Overview

DSL for defining locations, equipment, and points

Instance Method Summary collapse

Instance Method Details

#equipment(name:, label:, icon:, parent: nil) ⇒ Object



17
18
19
20
21
# File 'lib/habdsl/model/dsl.rb', line 17

def equipment(name:, label:, icon:, parent: nil, &)
  eq = Habdsl::Model::Equipment.new(name: name, label: label, icon: icon, parent: parent)
  eq.instance_eval(&) if block_given?
  eq
end

#location(name:, label:, icon:, parent: nil) ⇒ Object



11
12
13
14
15
# File 'lib/habdsl/model/dsl.rb', line 11

def location(name:, label:, icon:, parent: nil, &)
  loc = Habdsl::Model::Location.new(name: name, label: label, icon: icon, parent: parent)
  loc.instance_eval(&) if block_given?
  loc
end

#point(name:, label:, type:, icon:, tags:, parent: nil, channel: nil) ⇒ Object



23
24
25
26
# File 'lib/habdsl/model/dsl.rb', line 23

def point(name:, label:, type:, icon:, tags:, parent: nil, channel: nil)
  Habdsl::Model::Point.new(name: name, label: label, type: type, icon: icon, tags: tags, parent: parent,
                           channel: channel)
end