Open Bug 1552377 Opened 6 years ago Updated 3 years ago

Allow use of lambdas with Preference's callbacks

Categories

(Core :: Preferences: Backend, task, P5)

task

Tracking

()

People

(Reporter: jya, Unassigned)

References

Details

To achieve this, we could modify modify CallbackNode class. It would become the base class for classes like CallbackNodeCFunc, CallbackNodeStdFunction, and maybe CallbackNodeLambda<F>

It could potentially even save heap space as there are many cases we do not need the void* aData currently always stored (though we would gain a vtable).
Other members of the current CallBackNode could potentially be removed too saving even more space.

It would then allow to do things like:

Preferences::RegisterCallback([prefName](const T& aNewValue) { ... });

Priority: -- → P5
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.