--- !ruby/object:RI::MethodDescription 
aliases: []

block_params: 
comment: 
- !ruby/struct:SM::Flow::P 
  body: Assign a name to the n:th argument that this generator takes. An accessor with that name will automatically be added to the generator. Options can be provided to ensure the argument conforms to certain requirements. If a block is provided, when an argument is assigned, the block is called with that value and if :invalid is thrown, a proper error is raised
- !ruby/struct:SM::Flow::H 
  level: 3
  text: Parameters
- !ruby/object:SM::Flow::LIST 
  contents: 
  - !ruby/struct:SM::Flow::LI 
    label: "n<Integer>:"
    body: The index of the argument that this describes
  - !ruby/struct:SM::Flow::LI 
    label: "name<Symbol>:"
    body: The name of this argument, an accessor with this name will be created for the argument
  - !ruby/struct:SM::Flow::LI 
    label: "options<Hash>:"
    body: Options for this argument
  - !ruby/struct:SM::Flow::LI 
    label: "&block<Proc>:"
    body: Is evaluated on assignment to check the validity of the argument
  type: :NOTE
- !ruby/struct:SM::Flow::H 
  level: 4
  text: Options (opts)
- !ruby/object:SM::Flow::LIST 
  contents: 
  - !ruby/struct:SM::Flow::LI 
    label: ":default<Object>:"
    body: Specify a default value for this argument
  - !ruby/struct:SM::Flow::LI 
    label: ":as<Symbol>:"
    body: If set to :hash or :array, this argument will 'consume' all remaining arguments and bundle them
  type: :NOTE
- !ruby/struct:SM::Flow::VERB 
  body: "    Use this only for the last argument to this generator.\n"
- !ruby/object:SM::Flow::LIST 
  contents: 
  - !ruby/struct:SM::Flow::LI 
    label: ":required<Boolean>:"
    body: If set to true, the generator will throw an error if it initialized without this argument
  - !ruby/struct:SM::Flow::LI 
    label: ":desc<Symbol>:"
    body: Provide a description for this argument
  type: :NOTE
full_name: Templater::Generator::argument
is_singleton: true
name: argument
params: (n, name, options={}, &block)
visibility: public
