Skip to content

Commit b9281c9

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 465c753 commit b9281c9

File tree

4 files changed

+6
-176
lines changed

4 files changed

+6
-176
lines changed

hardware/arduino/avr/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)

hardware/arduino/avr/cores/arduino/Print.h

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -67,18 +67,10 @@ class Print
6767
size_t print(double, int = 2);
6868
size_t print(const Printable&);
6969

70-
size_t println(const __FlashStringHelper *);
71-
size_t println(const String &s);
72-
size_t println(const char[]);
73-
size_t println(char);
74-
size_t println(unsigned char, int = DEC);
75-
size_t println(int, int = DEC);
76-
size_t println(unsigned int, int = DEC);
77-
size_t println(long, int = DEC);
78-
size_t println(unsigned long, int = DEC);
79-
size_t println(double, int = 2);
80-
size_t println(const Printable&);
8170
size_t println(void);
71+
72+
template<typename T> size_t println(const T &arg) { size_t t = print(arg); return t + println(); }
73+
template<typename T> size_t println(const T &n, int f) { size_t t = print(n, f); return t + println(); }
8274
};
8375

8476
#endif

hardware/arduino/sam/cores/arduino/Print.cpp

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

106-
size_t Print::println(const __FlashStringHelper *ifsh)
107-
{
108-
size_t n = print(ifsh);
109-
n += println();
110-
return n;
111-
}
112-
113106
size_t Print::print(const Printable& x)
114107
{
115108
return x.printTo(*this);
@@ -120,76 +113,6 @@ size_t Print::println(void)
120113
return write("\r\n");
121114
}
122115

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

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

hardware/arduino/sam/cores/arduino/Print.h

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -67,18 +67,10 @@ class Print
6767
size_t print(double, int = 2);
6868
size_t print(const Printable&);
6969

70-
size_t println(const __FlashStringHelper *);
71-
size_t println(const String &s);
72-
size_t println(const char[]);
73-
size_t println(char);
74-
size_t println(unsigned char, int = DEC);
75-
size_t println(int, int = DEC);
76-
size_t println(unsigned int, int = DEC);
77-
size_t println(long, int = DEC);
78-
size_t println(unsigned long, int = DEC);
79-
size_t println(double, int = 2);
80-
size_t println(const Printable&);
8170
size_t println(void);
71+
72+
template<typename T> size_t println(const T &arg) { size_t t = print(arg); return t + println(); }
73+
template<typename T> size_t println(const T &n, int f) { size_t t = print(n, f); return t + println(); }
8274
};
8375

8476
#endif

0 commit comments

Comments
 (0)