Device interface library for multiple platforms including Mbed.

Dependents:   DeepCover Embedded Security in IoT MaximInterface MAXREFDES155#

Maxim Interface is a library framework focused on providing flexible and expressive hardware interfaces. Both communication interfaces such as I2C and 1-Wire and device interfaces such as DS18B20 are supported. Modern C++ concepts are used extensively while keeping compatibility with C++98/C++03 and requiring no external dependencies. The embedded-friendly design does not depend on exceptions or RTTI.

The full version of the project is hosted on GitLab: https://gitlab.com/iabenz/MaximInterface

Revision:
10:947d3f44e0a0
Parent:
8:5ea891c7d1a1
Child:
11:3f3bf6bf5e6c
--- a/MaximInterfaceCore/span.hpp	Fri Sep 27 16:19:38 2019 -0500
+++ b/MaximInterfaceCore/span.hpp	Mon Sep 30 09:39:32 2019 -0500
@@ -81,17 +81,13 @@
   /// @name Iterators
   /// @{
 
-  iterator begin() const {
-    return const_cast<iterator>(static_cast<const span_base &>(*this).cbegin());
-  }
+  iterator begin() const { return data(); }
 
-  const_iterator cbegin() const { return data(); }
+  const_iterator cbegin() const { return begin(); }
 
-  iterator end() const {
-    return const_cast<iterator>(static_cast<const span_base &>(*this).cend());
-  }
+  iterator end() const { return begin() + size(); }
 
-  const_iterator cend() const { return cbegin() + size(); }
+  const_iterator cend() const { return end(); }
 
   reverse_iterator rbegin() const { return reverse_iterator(end()); }