.. _doot.cmds.stub_cmd: ================== doot.cmds.stub_cmd ================== .. py:module:: doot.cmds.stub_cmd Type Aliases ------------ .. autoapisummary:: doot.cmds.stub_cmd.ListVal Classes ------- .. autoapisummary:: doot.cmds.stub_cmd._StubDoot_m doot.cmds.stub_cmd._StubParam_m doot.cmds.stub_cmd._StubAction_m doot.cmds.stub_cmd._StubTask_m doot.cmds.stub_cmd._StubPrinter_m doot.cmds.stub_cmd.StubCmd Module Contents =============== .. py:data:: ListVal :type: TypeAlias :value: str | Lambda | tuple[str, dict] .. doot.cmds.stub_cmd._StubDoot_m: .. py:class:: _StubDoot_m Mixin for stubbing the doot.toml file .. py:method:: param_specs() -> list .. py:method:: _stub_doot_toml() -> list[str] .. doot.cmds.stub_cmd._StubParam_m: .. py:class:: _StubParam_m Mixin for stubbing a cli parameter .. py:method:: param_specs() -> list .. py:method:: _stub_cli_param() -> list[str] .. doot.cmds.stub_cmd._StubAction_m: .. py:class:: _StubAction_m Mixin for stubbing an action .. py:method:: param_specs() -> list .. py:method:: _stub_action(idx: int, plugins: jgdv.structs.chainguard.ChainGuard) -> list[jgdv.Maybe[str]] .. doot.cmds.stub_cmd._StubTask_m: .. py:class:: _StubTask_m Mixin for stubbing a task .. py:method:: param_specs() -> list .. py:method:: _stub_task_toml(idx: int, tasks: jgdv.structs.chainguard.ChainGuard, plugins: jgdv.structs.chainguard.ChainGuard) -> list[str] This creates a toml stub using default values, as best it can .. py:method:: _stub_task_name(idx: int, tasks: jgdv.structs.chainguard.ChainGuard) -> str .. py:method:: _add_ctor_specific_stub_fields(idx: int, stub: doot.cmds.structs.TaskStub) -> None add ctor specific fields, such as for dir_walker: roots [], exts [], recursive bool, subtask "", head_task "" works *towards* the task_type, not away, so more specific elements are added over the top of more general elements .. doot.cmds.stub_cmd._StubPrinter_m: .. py:class:: _StubPrinter_m Mixin for stubbing printer config .. py:method:: param_specs() -> list .. py:method:: _stub_printer() -> list[jgdv.Maybe[str | tuple]] .. _doot.cmds.stub_cmd.StubCmd: .. py:class:: StubCmd(name: jgdv.Maybe[str] = None) Bases: :py:obj:`doot.cmds._base.BaseCommand` Called to interactively create a stub task definition with a `target`, outputs to that file, else to stdout for piping .. py:attribute:: _name :value: 'stub' .. py:attribute:: _help :value: ('Create a new stub task either to stdout, or path', 'args allow stubbing a config file, cli... .. py:method:: param_specs() -> list Provide parameter specs for parsing into doot.args.cmds