Class: Textus::Contract::Arg
- Inherits:
-
Data
- Object
- Data
- Textus::Contract::Arg
- Defined in:
- lib/textus/contract.rb
Overview
One argument of a verb. ‘positional: true` means it is passed to the use-case as a positional (e.g. `get(key)`); otherwise as a keyword. `session_default` names a zero-arg method on `Textus::Session` (Symbol) that supplies the value when the wire arg is absent; `nil` means no default. `wire_name` is the name the arg carries on the wire (MCP JSON property / CLI envelope key) when it must differ from the use-case kwarg `name` — e.g. `put` takes the `meta:` kwarg but exposes `_meta` on the wire to match what `get` returns and what the CLI `–stdin` envelope already speaks (ADR 0057).
Instance Attribute Summary collapse
-
#description ⇒ Object
readonly
Returns the value of attribute description.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#positional ⇒ Object
readonly
Returns the value of attribute positional.
-
#required ⇒ Object
readonly
Returns the value of attribute required.
-
#session_default ⇒ Object
readonly
Returns the value of attribute session_default.
-
#type ⇒ Object
readonly
Returns the value of attribute type.
-
#wire_name ⇒ Object
readonly
Returns the value of attribute wire_name.
Instance Method Summary collapse
-
#wire ⇒ Object
The name used on the wire (defaults to the kwarg name).
Instance Attribute Details
#description ⇒ Object (readonly)
Returns the value of attribute description
15 16 17 |
# File 'lib/textus/contract.rb', line 15 def description @description end |
#name ⇒ Object (readonly)
Returns the value of attribute name
15 16 17 |
# File 'lib/textus/contract.rb', line 15 def name @name end |
#positional ⇒ Object (readonly)
Returns the value of attribute positional
15 16 17 |
# File 'lib/textus/contract.rb', line 15 def positional @positional end |
#required ⇒ Object (readonly)
Returns the value of attribute required
15 16 17 |
# File 'lib/textus/contract.rb', line 15 def required @required end |
#session_default ⇒ Object (readonly)
Returns the value of attribute session_default
15 16 17 |
# File 'lib/textus/contract.rb', line 15 def session_default @session_default end |
#type ⇒ Object (readonly)
Returns the value of attribute type
15 16 17 |
# File 'lib/textus/contract.rb', line 15 def type @type end |
#wire_name ⇒ Object (readonly)
Returns the value of attribute wire_name
15 16 17 |
# File 'lib/textus/contract.rb', line 15 def wire_name @wire_name end |
Instance Method Details
#wire ⇒ Object
The name used on the wire (defaults to the kwarg name).
17 |
# File 'lib/textus/contract.rb', line 17 def wire = wire_name || name |