Skip to content

Commit 445fc2c

Browse files
Cleaning up a little
1 parent e12b770 commit 445fc2c

1 file changed

Lines changed: 5 additions & 11 deletions

File tree

src/mixin_patterns.cpp

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -153,40 +153,34 @@ int main()
153153

154154

155155
// Create a writeable::view that can view DerivedReadWriter
156-
std::cout << "Creating a writable::view to view DerivedReadWriter" << std::endl;
157156
DerivedReadWriter derived_read_writer_instance;
158157
writable::view write_view_0;
159158
write_view_0.bind(derived_read_writer_instance);
160-
write_view_0.write("Hello from write view, message routed: writable::view::write() -> DerivedReadWriter::write()\r\n", 96);
159+
write_view_0.write("Hello from write view\r\n", 96);
161160

162161

163162
// Augment the writable::view with the write api
164-
std::cout << "\nCreating an augmented writable::view to view and extend Writer" << std::endl;
165163
Writer writer;
166164
WriteAPI<writable::view> augmented_write_view_0;
167165
augmented_write_view_0.bind(writer);
168166
augmented_write_view_0.write_api(
169-
"Hello from augmented view, message routed: WriteAPI::write_api() -> writeable::view::write() -> Writer::write()\r\n"
167+
"Hello from augmented view, using WriteAPI::write_api()\r\n"
170168
);
171169

172170
// Augmentation without the view
173171
// This is only safe to do because WriteAPI has no virtuals or member variables
174-
std::cout << "\nViewing the raw ComposedReadWriter through the WriteAPI" << std::endl;
175172
ComposedReadWriter composed_read_writer_instance;
176173
WriteAPI<ComposedReadWriter> * pure_augmentation_0 = static_cast<WriteAPI<ComposedReadWriter> *>(&composed_read_writer_instance);
177174
pure_augmentation_0->write_api(
178-
"Hello from pure augmentation messge routed: WriteAPI::write_api() -> ComposedReadWriter::write()\r\n"
175+
"Hello from augmented view of raw pointer\r\n"
179176
);
180177

181178
// Stateful Augmentation
182-
// This is safe because writeable::view is a real type, not a pointer
183-
std::cout << "\nViewing the raw DerivedReadWriter as an AbstractWriter through the StatefulWriteAPI" << std::endl;
179+
// This is safe because we are using an instance not a pointer
184180
AbstractWriter * abstract_writer_ptr = static_cast<AbstractWriter*>(&derived_read_writer_instance);
185181
StatefulWriteAPI<writable::view> stateful_augmented_view;
186182
stateful_augmented_view.bind(*abstract_writer_ptr);
187-
stateful_augmented_view.write_api(
188-
"Hello from stateful augmentation, messge routed: StatefulWriteAPI::write_api() -> AbstractWriter::write() -> DerivedReadWriter::write()\r\n"
189-
);
183+
stateful_augmented_view.write_api("Hello from stateful augmentation\r\n");
190184
stateful_augmented_view.write_api("Hello from stateful augmentation\r\n");
191185
stateful_augmented_view.write_api("Hello from stateful augmentation\r\n");
192186

0 commit comments

Comments
 (0)