# Lair Configuration DSL Case Study (Python 3)
# Class Variable-based DSL: Test DSL Input (for builder11)
# H. Conrad Cunningham

# Developed for CSci 658, Software Language Engineering, Spring 2018

#234567890123456789012345678901234567890123456789012345678901234567890

# 2018-02-27: (V1) adapted from M. Fowler's Ruby version rules11.rb
#             and my Lua version rules11.rb

# Note multiline expression is encluded in paretheses.

Configuration.item("secure_air_vent")

(Configuration.item("acid_bath").
    consumes(Resource.acid().
      with_type("hcl").
      with_grade(5)).
    consumes(Resource.electricity(12)))

(Configuration.item("camera").consumes(Resource.electricity(1)))

(Configuration.item("small_power_plant").
    provides(Resource.electricity(11)).
    depends_on("secure_air_vent"))
