-
Notifications
You must be signed in to change notification settings - Fork 201
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Several improvements: Support move semantic + remove vector in favour of std one + add support for std::string with -D DASH_USE_STL_STRING=1 #245
base: dev
Are you sure you want to change the base?
Conversation
All contributors have signed the CLA ✍️ ✅ |
I have read the CLA Document and I hereby sign the CLA |
db80f53
to
03fd807
Compare
@ayushsharma82 : FYI. I also have the same commits for the pro version in my dev branch. I refreshed them just now (minor cleanups) and rebased. |
Thanks @mathieucarbou , I'll merge everything in upcoming days. |
This PR is marked as stale because it has been open 45 days with no activity. You can remove stale label or comment if this PR is still valid. |
Last commit close #251 |
Several improvements in this PR:
1) using std::vector instead of current vector class
2)Support for move semantic for strings to avoid a buffer copy for rvalues
Move semantic allows to avoid a second buffer copy when calling ESP-DASH with rvalues like that:
The created buffer will directly be transferred to the internal class, which reduces heap fragmentation.
These
update()
calls being frequently called so this is a relevant optimizaiton.3) add support for std::string with -D DASH_USE_STL_STRING=1