NAME

Venus::Task::Venus - vns

ABSTRACT

Task Class for Venus CLI

SYNOPSIS

package main;

use Venus::Task::Venus;

my $task = Venus::Task::Venus->new;

# bless({...}, 'Venus::Task::Venus')

DESCRIPTION

This package is the task class for the vns CLI.

INHERITS

This package inherits behaviors from:

Venus::Task

METHODS

This package provides the following methods:

new

new(any @args) (Venus::Task::Venus)

The new method constructs an instance of the package.

Since 4.15

new example 1
package main;

use Venus::Task::Venus;

my $task = Venus::Task::Venus->new;

# bless({...}, 'Venus::Task::Venus')

perform

perform() (Venus::Task::Venus)

The perform method executes the CLI logic.

Since 4.15

perform example 1
# given: synopsis

package main;

$task->prepare;

$task->parse('');

my $perform = $task->perform;

# bless({...}, 'Venus::Task::Venus')

# ''
perform example 2
# given: synopsis

package main;

$task->prepare;

$task->parse('die');

my $perform = $task->perform;

# bless({...}, 'Venus::Task::Venus')

# ''
perform example 3
# given: synopsis

package main;

$task->prepare;

$task->parse('gen', '--stdout', '--class');

my $perform = $task->perform;

# bless({...}, 'Venus::Task::Venus')

# '...'
perform example 4
# given: synopsis

package main;

$task->prepare;

$task->parse('get', 'perl.repl');

my $perform = $task->perform;

# bless({...}, 'Venus::Task::Venus')

# '...'
perform example 5
# given: synopsis

package main;

$task->prepare;

$task->parse('new', 'yaml');

my $perform = $task->perform;

# bless({...}, 'Venus::Task::Venus')

# '...'
perform example 6
# given: synopsis

package main;

$task->prepare;

$task->parse('run', 'okay', 't/Venus.t');

my $perform = $task->perform;

# bless({...}, 'Venus::Task::Venus')

# '...'
perform example 7
# given: synopsis

package main;

$task->prepare;

$task->parse('set', 'perl.repl', '$PERL -dE0');

my $perform = $task->perform;

# bless({...}, 'Venus::Task::Venus')

# '...'

AUTHORS

Awncorp, awncorp@cpan.org

LICENSE

Copyright (C) 2022, Awncorp, awncorp@cpan.org.

This program is free software, you can redistribute it and/or modify it under the terms of the Apache license version 2.0.