diff --git a/README.md b/README.md index 3f966ee..7a1e02d 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,12 @@ We are not fear of criticism, our cats will cheer us up. - [Meter](src/Distance/Meter.php) - [NavyMile](src/Distance/NavyMile.php) - [Parsec](src/Distance/Parsec.php) + - [Mass](src/Mass) + - [Gram](src/Mass/Gram.php) + - [Planck](src/Mass/Planck.php) + - [Pound](src/Mass/Pound.php) + - [Slug](src/Mass/Slug.php) + - [Solar](src/Mass/Solar.php) - [Time](src/Time): - [Hour](src/Time/Hour.php) - [Ke](src/Time/Ke.php) diff --git a/script/run.php b/script/run.php new file mode 100644 index 0000000..4de63ab --- /dev/null +++ b/script/run.php @@ -0,0 +1,22 @@ +generate(); + $ret = preg_replace('/^/','quality = (float) $quality; + } + + public function isEqualTo(ValueObjectInterface $compare): bool + { + $className = static::class; + if (false === ($compare instanceof AbstractMass) || false === ($compare instanceof $className)) { + $errorMsg = 'you are able to compare only to same massUnit as ' . $className; + throw new \InvalidArgumentException($errorMsg); + } + + return $compare->getQuality() == $this->getQuality(); + } + + /** + * {@inheritdoc} + */ + public function __toString(): string + { + return $this->getQuality() . ' ' . $this->getUnit(); + } + + /** + * @return float + */ + public function getQuality(): float + { + return $this->quality; + } + + /** + * @return string + */ + public function getUnit(): string + { + return $this->unit; + } +} diff --git a/src/Mass/Gram.php b/src/Mass/Gram.php new file mode 100644 index 0000000..546c762 --- /dev/null +++ b/src/Mass/Gram.php @@ -0,0 +1,14 @@ +unit = 'g'; + } +} diff --git a/src/Mass/Planck.php b/src/Mass/Planck.php new file mode 100644 index 0000000..5d19b11 --- /dev/null +++ b/src/Mass/Planck.php @@ -0,0 +1,14 @@ +unit = 'mP'; + } +} diff --git a/src/Mass/Pound.php b/src/Mass/Pound.php new file mode 100644 index 0000000..a3ff6c1 --- /dev/null +++ b/src/Mass/Pound.php @@ -0,0 +1,14 @@ +unit = 'lb'; + } +} diff --git a/src/Mass/Slug.php b/src/Mass/Slug.php new file mode 100644 index 0000000..d43b0af --- /dev/null +++ b/src/Mass/Slug.php @@ -0,0 +1,14 @@ +unit = 'sl'; + } +} diff --git a/src/Mass/Solar.php b/src/Mass/Solar.php new file mode 100644 index 0000000..298729e --- /dev/null +++ b/src/Mass/Solar.php @@ -0,0 +1,14 @@ +unit = 'M☉'; + } +}