Skip to content

Commit 3607525

Browse files
everslickme-no-dev
authored andcommitted
WString explicit converters to reduce Flash size (espressif#3497)
* WString explicit converters to reduce Flash size This is a port from the same patch for ESP8266: https://github.com/esp8266/Arduino/pull/6759/files
1 parent 7de1717 commit 3607525

File tree

1 file changed

+28
-1
lines changed

1 file changed

+28
-1
lines changed

‎cores/esp32/WString.h‎

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,8 +203,20 @@ class String{
203203
unsignedcharequalsIgnoreCase(const String &s) const;
204204
unsignedcharequalsConstantTime(const String &s) const;
205205
unsignedcharstartsWith(const String &prefix) const;
206+
unsignedcharstartsWith(constchar *prefix) const{
207+
returnthis->startsWith(String(prefix));
208+
}
209+
unsignedcharstartsWith(const __FlashStringHelper *prefix) const{
210+
returnthis->startsWith(String(prefix));
211+
}
206212
unsignedcharstartsWith(const String &prefix, unsignedint offset) const;
207213
unsignedcharendsWith(const String &suffix) const;
214+
unsignedcharendsWith(constchar *suffix) const{
215+
returnthis->endsWith(String(suffix));
216+
}
217+
unsignedcharendsWith(const __FlashStringHelper * suffix) const{
218+
returnthis->endsWith(String(suffix));
219+
}
208220

209221
// character access
210222
charcharAt(unsignedint index) const;
@@ -238,7 +250,22 @@ class String{
238250

239251
// modification
240252
voidreplace(char find, char replace);
241-
voidreplace(const String& find, const String& replace);
253+
voidreplace(const String &find, const String &replace);
254+
voidreplace(constchar *find, const String &replace){
255+
this->replace(String(find), replace);
256+
}
257+
voidreplace(const __FlashStringHelper *find, const String &replace){
258+
this->replace(String(find), replace);
259+
}
260+
voidreplace(constchar *find, constchar *replace){
261+
this->replace(String(find), String(replace));
262+
}
263+
voidreplace(const __FlashStringHelper *find, constchar *replace){
264+
this->replace(String(find), String(replace));
265+
}
266+
voidreplace(const __FlashStringHelper *find, const __FlashStringHelper *replace){
267+
this->replace(String(find), String(replace));
268+
}
242269
voidremove(unsignedint index);
243270
voidremove(unsignedint index, unsignedint count);
244271
voidtoLowerCase(void);

0 commit comments

Comments
(0)