aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2023-06-07 16:41:32 +0200
committerFelix Morgner <felix.morgner@gmail.com>2023-06-07 16:41:32 +0200
commitaa7c021962f529f3ed2f482fd6f02e5497532a8a (patch)
treec8a3eff796c94f757cc8ae7d3b2324f53038e0c3 /examples
parent741b6d177865f20908b1b290c5170025964d3d9a (diff)
downloadnewtype-aa7c021962f529f3ed2f482fd6f02e5497532a8a.tar.xz
newtype-aa7c021962f529f3ed2f482fd6f02e5497532a8a.zip
project: begin restructuring
Diffstat (limited to 'examples')
-rw-r--r--examples/src/basic_usage.cpp39
-rw-r--r--examples/src/basic_usage_with_read.cpp39
-rw-r--r--examples/src/basic_usage_with_show.cpp41
3 files changed, 0 insertions, 119 deletions
diff --git a/examples/src/basic_usage.cpp b/examples/src/basic_usage.cpp
deleted file mode 100644
index 35d1d2c..0000000
--- a/examples/src/basic_usage.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-#include <newtype/newtype.hpp>
-
-#include <iostream>
-
-using Width = nt::new_type<unsigned int, struct width_tag>;
-using Height = nt::new_type<unsigned int, struct height_tag>;
-using Area = nt::new_type<unsigned int, struct area_tag>;
-
-struct Rectangle
-{
- constexpr Rectangle(Width w, Height h)
- : width{w}
- , height{h}
- {
- }
-
- auto constexpr area() const noexcept -> Area
- {
- return {width.decay() * height.decay()};
- }
-
-private:
- Width width;
- Height height;
-};
-
-int main()
-{
- auto w{0u}, h{0u};
-
- std::cin >> w >> h;
-
- auto width = Width{w};
- auto height = Height{h};
-
- auto rect = Rectangle{width, height};
-
- std::cout << rect.area().decay() << '\n';
-} \ No newline at end of file
diff --git a/examples/src/basic_usage_with_read.cpp b/examples/src/basic_usage_with_read.cpp
deleted file mode 100644
index 2dabe2e..0000000
--- a/examples/src/basic_usage_with_read.cpp
+++ /dev/null
@@ -1,39 +0,0 @@
-#include <newtype/derivable.hpp>
-#include <newtype/deriving.hpp>
-#include <newtype/newtype.hpp>
-
-#include <iostream>
-
-using Width = nt::new_type<unsigned int, struct width_tag, deriving(nt::Read)>;
-using Height = nt::new_type<unsigned int, struct height_tag, deriving(nt::Read)>;
-using Area = nt::new_type<unsigned int, struct area_tag, deriving(nt::Show)>;
-
-struct Rectangle
-{
- constexpr Rectangle(Width w, Height h)
- : width{w}
- , height{h}
- {
- }
-
- auto constexpr area() const noexcept -> Area
- {
- return {width.decay() * height.decay()};
- }
-
-private:
- Width width;
- Height height;
-};
-
-int main()
-{
- auto width = Width{};
- auto height = Height{};
-
- std::cin >> width >> height;
-
- auto rect = Rectangle{width, height};
-
- std::cout << rect.area() << '\n';
-} \ No newline at end of file
diff --git a/examples/src/basic_usage_with_show.cpp b/examples/src/basic_usage_with_show.cpp
deleted file mode 100644
index 4bb68f6..0000000
--- a/examples/src/basic_usage_with_show.cpp
+++ /dev/null
@@ -1,41 +0,0 @@
-#include <newtype/derivable.hpp>
-#include <newtype/deriving.hpp>
-#include <newtype/newtype.hpp>
-
-#include <iostream>
-
-using Width = nt::new_type<unsigned int, struct width_tag>;
-using Height = nt::new_type<unsigned int, struct height_tag>;
-using Area = nt::new_type<unsigned int, struct area_tag, deriving(nt::Show)>;
-
-struct Rectangle
-{
- constexpr Rectangle(Width w, Height h)
- : width{w}
- , height{h}
- {
- }
-
- auto constexpr area() const noexcept -> Area
- {
- return {width.decay() * height.decay()};
- }
-
-private:
- Width width;
- Height height;
-};
-
-int main()
-{
- auto w{0u}, h{0u};
-
- std::cin >> w >> h;
-
- auto width = Width{w};
- auto height = Height{h};
-
- auto rect = Rectangle{width, height};
-
- std::cout << rect.area() << '\n';
-} \ No newline at end of file