Skip to content
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

Switch from boost to ext and ql includes #151

Open
eltoder opened this issue May 19, 2023 · 4 comments
Open

Switch from boost to ext and ql includes #151

eltoder opened this issue May 19, 2023 · 4 comments

Comments

@eltoder
Copy link
Contributor

eltoder commented May 19, 2023

Upstream QuantLib is moving from boost classes to std classes for shared_ptr, optional, etc. To ease the transition they added the ext:: namespace which has aliases to either boost or std classes depending on the config options. Are you planning to update your code to use the ext namespace to make it closer to the upstream? This is mostly a search and replace exercise but there are a few thousand hits.

@eltoder
Copy link
Contributor Author

eltoder commented May 26, 2023

@pcaspers could you opine please?

@pcaspers
Copy link
Collaborator

@eltoder Yes this is already on our radar. I expect this to be done in the next release.

@QuaternionRisk
Copy link
Member

We did not manage to get this done for the 10th release, unfortunately. We will keep it on our roadmap for the next one (end of September) .
Regards, Roland

@UnitedMarsupials
Copy link

Here is, what I had to do to achieve this. Perl or sed can be used to do this with a single command:

  1. Replace boost::(make_shared|shared_ptr|optional|dynamic_pointer_cast|none|static_pointer_cast) with QuantLib::ext::\1 throughout.
  2. Subsequently replace ext::none with ext::nullopt.

If only figuring out the fairSpreadClean() added to the fork were as easy :-/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants