From 7d54c823316f24297cd20092e8bc1305d591b351 Mon Sep 17 00:00:00 2001 From: Przemek Wirkus Date: Tue, 6 Jan 2015 08:32:16 +0000 Subject: [PATCH] * Changed Bus operator[]() parameter from unsigned int to int to match mbed code guidelines. * Uncommented assertions in operators and added check for operator[] index < 0. * Moved one operator from private to public, this was a typo thing. --- libraries/mbed/api/BusIn.h | 2 +- libraries/mbed/api/BusInOut.h | 5 ++++- libraries/mbed/api/BusOut.h | 2 +- libraries/mbed/common/BusIn.cpp | 6 +++--- libraries/mbed/common/BusInOut.cpp | 6 +++--- libraries/mbed/common/BusOut.cpp | 6 +++--- 6 files changed, 15 insertions(+), 12 deletions(-) diff --git a/libraries/mbed/api/BusIn.h b/libraries/mbed/api/BusIn.h index 837a71bcec..6f20875fa4 100644 --- a/libraries/mbed/api/BusIn.h +++ b/libraries/mbed/api/BusIn.h @@ -77,7 +77,7 @@ public: /** Access to particular bit in random-iterator fashion */ - DigitalIn & operator[] (unsigned int index); + DigitalIn & operator[] (int index); #endif protected: diff --git a/libraries/mbed/api/BusInOut.h b/libraries/mbed/api/BusInOut.h index 9d3c38154d..e9a12c5f92 100644 --- a/libraries/mbed/api/BusInOut.h +++ b/libraries/mbed/api/BusInOut.h @@ -90,6 +90,10 @@ public: BusInOut& operator= (int v); BusInOut& operator= (BusInOut& rhs); + /** Access to particular bit in random-iterator fashion + */ + DigitalInOut& operator[] (int index); + /** A shorthand for read() */ operator int(); @@ -108,7 +112,6 @@ protected: private: BusInOut(const BusInOut&); BusInOut & operator = (const BusInOut&); - DigitalInOut& operator[] (unsigned int index); }; } // namespace mbed diff --git a/libraries/mbed/api/BusOut.h b/libraries/mbed/api/BusOut.h index b979b3f16a..9e88e2d170 100644 --- a/libraries/mbed/api/BusOut.h +++ b/libraries/mbed/api/BusOut.h @@ -76,7 +76,7 @@ public: /** Access to particular bit in random-iterator fashion */ - DigitalOut& operator[] (unsigned int index); + DigitalOut& operator[] (int index); /** A shorthand for read() */ diff --git a/libraries/mbed/common/BusIn.cpp b/libraries/mbed/common/BusIn.cpp index 2858ccc2ea..dbecf4a9a7 100644 --- a/libraries/mbed/common/BusIn.cpp +++ b/libraries/mbed/common/BusIn.cpp @@ -72,9 +72,9 @@ BusIn::operator int() { return read(); } -DigitalIn& BusIn::operator[] (unsigned int index) { - //MBED_ASSERT(index >= MBED_BUS_SIZE); - //MBED_ASSERT(_pin[index]); +DigitalIn& BusIn::operator[] (int index) { + MBED_ASSERT(index < 0 || index >= MBED_BUS_SIZE); + MBED_ASSERT(_pin[index]); if (index >= 16 || _pin[index] == NULL) { return din_dummy; } diff --git a/libraries/mbed/common/BusInOut.cpp b/libraries/mbed/common/BusInOut.cpp index e3a1182aba..d4ed0bda12 100644 --- a/libraries/mbed/common/BusInOut.cpp +++ b/libraries/mbed/common/BusInOut.cpp @@ -102,9 +102,9 @@ BusInOut& BusInOut::operator= (BusInOut& rhs) { return *this; } -DigitalInOut& BusInOut::operator[] (unsigned int index) { - //MBED_ASSERT(index >= MBED_BUS_SIZE); - //MBED_ASSERT(_pin[index]); +DigitalInOut& BusInOut::operator[] (int index) { + MBED_ASSERT(index < 0 || index >= MBED_BUS_SIZE); + MBED_ASSERT(_pin[index]); if (index >= 16 || _pin[index] == NULL) { return dinout_dummy; } diff --git a/libraries/mbed/common/BusOut.cpp b/libraries/mbed/common/BusOut.cpp index 445b3f8658..9d94a4c9d7 100644 --- a/libraries/mbed/common/BusOut.cpp +++ b/libraries/mbed/common/BusOut.cpp @@ -78,9 +78,9 @@ BusOut& BusOut::operator= (BusOut& rhs) { return *this; } -DigitalOut& BusOut::operator[] (unsigned int index) { - //MBED_ASSERT(index >= MBED_BUS_SIZE); - //MBED_ASSERT(_pin[index]); +DigitalOut& BusOut::operator[] (int index) { + MBED_ASSERT(index < 0 || index >= MBED_BUS_SIZE); + MBED_ASSERT(_pin[index]); if (index >= 16 || _pin[index] == NULL) { return dout_dummy; }