Making Print::write(char *) non-virtual.

http://code.google.com/p/arduino/issues/detail?id=607
This commit is contained in:
David A. Mellis 2011-09-07 18:41:05 -04:00
parent 3c66dc1b8d
commit 8b13206e65
5 changed files with 2 additions and 15 deletions

View File

@ -10,7 +10,6 @@ public:
virtual int connect(IPAddress ip, uint16_t port) =0;
virtual int connect(const char *host, uint16_t port) =0;
virtual size_t write(uint8_t) =0;
virtual size_t write(const char *str) =0;
virtual size_t write(const uint8_t *buf, size_t size) =0;
virtual int available() = 0;
virtual int read() = 0;

View File

@ -29,16 +29,6 @@
// Public Methods //////////////////////////////////////////////////////////////
/* default implementation: may be overridden */
size_t Print::write(const char *str)
{
size_t n = 0;
while (*str) {
n += write(*str++);
}
return n;
}
/* default implementation: may be overridden */
size_t Print::write(const uint8_t *buffer, size_t size)
{

View File

@ -46,7 +46,7 @@ class Print
void clearWriteError() { setWriteError(0); }
virtual size_t write(uint8_t) = 0;
virtual size_t write(const char *str);
size_t write(const char *str) { return write((const uint8_t *)str, strlen(str)); }
virtual size_t write(const uint8_t *buffer, size_t size);
size_t print(const __FlashStringHelper *);

View File

@ -1,7 +1,7 @@
#ifndef server_h
#define server_h
class Server {
class Server : public Print {
public:
virtual void begin() =0;
};

View File

@ -57,8 +57,6 @@ public:
virtual int endPacket() =0;
// Write a single byte into the packet
virtual size_t write(uint8_t) =0;
// Write a string of characters into the packet
virtual size_t write(const char *str) =0;
// Write size bytes from buffer into the packet
virtual size_t write(const uint8_t *buffer, size_t size) =0;