# File lib/blockenspiel/dsl_setup.rb, line 263
    def dsl_attr_accessor(*names_)
      names_.each do |name_|
        unless name_.kind_of?(::String) || name_.kind_of?(::Symbol)
          raise ::TypeError, "#{name_.inspect} is not a symbol"
        end
        unless name_.to_s =~ /^[_a-zA-Z]\w+$/
          raise ::NameError, "invalid attribute name #{name_.inspect}"
        end
        module_eval("def #{name_}(value_=::Blockenspiel::NO_VALUE); ::Blockenspiel::NO_VALUE.equal?(value_) ? @#{name_} : @#{name_} = value_; end\n")
        alias_method("#{name_}=", name_)
        dsl_method(name_)
      end
    end