Skip to content

Commit 5301d53

Browse files
Inline println(...) functions
Remove all definitions of println(...) from Print.cpp except println(void), and replace them with inline methods in Print.h. This simplifies the code in Print.cpp improving maintainability.
1 parent b7c6076 commit 5301d53

File tree

2 files changed

+3
-88
lines changed

2 files changed

+3
-88
lines changed

cores/arduino/Print.cpp

Lines changed: 0 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -111,13 +111,6 @@ size_t Print::print(double n, int digits)
111111
return printFloat(n, digits);
112112
}
113113

114-
size_t Print::println(const __FlashStringHelper *ifsh)
115-
{
116-
size_t n = print(ifsh);
117-
n += println();
118-
return n;
119-
}
120-
121114
size_t Print::print(const Printable& x)
122115
{
123116
return x.printTo(*this);
@@ -128,76 +121,6 @@ size_t Print::println(void)
128121
return write("\r\n");
129122
}
130123

131-
size_t Print::println(const String &s)
132-
{
133-
size_t n = print(s);
134-
n += println();
135-
return n;
136-
}
137-
138-
size_t Print::println(const char c[])
139-
{
140-
size_t n = print(c);
141-
n += println();
142-
return n;
143-
}
144-
145-
size_t Print::println(char c)
146-
{
147-
size_t n = print(c);
148-
n += println();
149-
return n;
150-
}
151-
152-
size_t Print::println(unsigned char b, int base)
153-
{
154-
size_t n = print(b, base);
155-
n += println();
156-
return n;
157-
}
158-
159-
size_t Print::println(int num, int base)
160-
{
161-
size_t n = print(num, base);
162-
n += println();
163-
return n;
164-
}
165-
166-
size_t Print::println(unsigned int num, int base)
167-
{
168-
size_t n = print(num, base);
169-
n += println();
170-
return n;
171-
}
172-
173-
size_t Print::println(long num, int base)
174-
{
175-
size_t n = print(num, base);
176-
n += println();
177-
return n;
178-
}
179-
180-
size_t Print::println(unsigned long num, int base)
181-
{
182-
size_t n = print(num, base);
183-
n += println();
184-
return n;
185-
}
186-
187-
size_t Print::println(double num, int digits)
188-
{
189-
size_t n = print(num, digits);
190-
n += println();
191-
return n;
192-
}
193-
194-
size_t Print::println(const Printable& x)
195-
{
196-
size_t n = print(x);
197-
n += println();
198-
return n;
199-
}
200-
201124
// Private Methods /////////////////////////////////////////////////////////////
202125

203126
size_t Print::printNumber(unsigned long n, uint8_t base)

cores/arduino/Print.h

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -74,20 +74,12 @@ class Print
7474
size_t print(double, int = 2);
7575
size_t print(const Printable&);
7676

77-
size_t println(const __FlashStringHelper *);
78-
size_t println(const String &s);
79-
size_t println(const char[]);
80-
size_t println(char);
81-
size_t println(unsigned char, int = DEC);
82-
size_t println(int, int = DEC);
83-
size_t println(unsigned int, int = DEC);
84-
size_t println(long, int = DEC);
85-
size_t println(unsigned long, int = DEC);
86-
size_t println(double, int = 2);
87-
size_t println(const Printable&);
8877
size_t println(void);
8978

9079
virtual void flush() { /* Empty implementation for backward compatibility */ }
80+
81+
template<typename T> size_t println(const T &arg) { size_t t = print(arg); return t + println(); }
82+
template<typename T> size_t println(const T &n, int f) { size_t t = print(n, f); return t + println(); }
9183
};
9284

9385
#endif

0 commit comments

Comments
 (0)