11
0
Fork 0
mirror of https://github.com/n3w/helpers-cli-input.git synced 2025-12-19 20:53:27 +00:00

Added getDisplayName() method to standardise how the name of an InputTypeInterface class wants to display it's name

This commit is contained in:
Alannah Kearney 2019-05-25 11:56:47 +10:00
commit 4117ed266c
4 changed files with 28 additions and 12 deletions

View file

@ -17,4 +17,6 @@ interface InputTypeInterface
public function getType(): string;
public function respondsTo(string $name): bool;
public function __toString(): string;
public function getDisplayName(): string;
}

View file

@ -25,7 +25,11 @@ class Argument extends Input\AbstractInputType
parent::__construct($name, $flags, $description, $validator, $default);
}
public function __toString()
public function getDisplayName(): string {
return strtoupper($this->name());
}
public function __toString(): string
{
// MAGIC VALUES!!! OH MY.....
$padCharacter = ' ';
@ -53,7 +57,7 @@ class Argument extends Input\AbstractInputType
);
$first = Strings\mb_str_pad(
strtoupper($this->name()).str_repeat($padCharacter, $argumentNameMinimumPaddingWidth),
$this->getDisplayName().str_repeat($padCharacter, $argumentNameMinimumPaddingWidth),
$argumentNamePaddedWidth,
$padCharacter
);

View file

@ -24,7 +24,18 @@ class LongOption extends Input\AbstractInputType
return ($name == $this->name || $name == $this->short);
}
public function __toString()
public function getDisplayName(): string {
$short =
null !== $this->short()
? '-'.$this->short().', '
: null
;
return sprintf("%s--%s", $short, $this->name());
}
public function __toString(): string
{
// MAGIC VALUES!!! OH MY.....
$padCharacter = ' ';
@ -51,10 +62,7 @@ class LongOption extends Input\AbstractInputType
STR_PAD_LEFT
);
$short = null !== $this->short() ? '-'.$this->short() : null;
$long = null;
$long = '--'.$this->name();
$long = $this->getDisplayName();
if (Flags\is_flag_set($this->flags(), self::FLAG_VALUE_REQUIRED)) {
$long .= '=VALUE';
} elseif (Flags\is_flag_set($this->flags(), self::FLAG_VALUE_OPTIONAL)) {
@ -62,7 +70,7 @@ class LongOption extends Input\AbstractInputType
}
$first = Strings\mb_str_pad(
(null !== $short ? "{$short}, " : '').$long, // -O, --LONG,
$long, // -O, --LONG,
$optionNamePaddedWidth,
$padCharacter
);

View file

@ -11,7 +11,11 @@ use pointybeard\Helpers\Cli\Input;
class Option extends Input\AbstractInputType
{
public function __toString()
public function getDisplayName(): string {
return '-'.$this->name();
}
public function __toString(): string
{
// MAGIC VALUES!!! OH MY.....
$padCharacter = ' ';
@ -38,10 +42,8 @@ class Option extends Input\AbstractInputType
STR_PAD_LEFT
);
$short = '-'.$this->name();
$first = Strings\mb_str_pad(
$short,
$this->getDisplayName(),
$optionNamePaddedWidth,
$padCharacter
);