Rewrite how InterpolationType comparison is done |
||||||
Issue descriptionInterpolationType::operator!= is used to compare the type of an interpolation to its underlying value and relies on InterpolationType objects being singletons per property. It's not clear to me that this is the best way to do this.
,
Jun 30 2016
Yeah, this is just something that I want to give some thought to, so I wanted a bug to track it. Note to self: this is also why the destructor for InterpolationType is ASSERT_NOT_REACHED()
,
Oct 5 2016
InterpolationType comparison is a crucial part of registered custom property support, so any work here will need to be careful of that.
,
Oct 10 2016
,
Jan 11 2017
I'm not likely to work on this soon, so making it Available. I'm actively working on the broader Objective (issue 654309), however, and happy to brief someone if they want to take it up before I get back to it.
,
Jan 11 2017
Would you be able to document the brief here? I'm not convinced this is actually an issue.
,
Jan 11 2017
My intuition is that the design is fragile, but I can't put my finger on why. I think some part of my brain is rebelling at the notion of having an object to represent a type, when types are more like classes. Maybe it's a naming issue in disguise, or maybe it's a sign that the design of this code is off-kilter. I find the concept of the design somewhat difficult to grasp, and hence I think something here falls under the "Simplify interpolation code in Blink" Objective. It troubles me that I can't see what might be needed, and at this stage am hoping that other simplification work will start to make it clearer.
,
Jan 11 2017
A design closer to AnimatableValues would probably resolve your unease. I imagine one path could be to push InterpolableValues and InterpolationTypes into NonInterpolableValues. NIVs already have the ability to know when two objects are of different subclasses (see the virtual getType() method), that could be used in place of InterpolationType's operator==() pointer comparison.
,
Jun 13 2017
,
Jun 13 2018
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue. Sorry for the inconvenience if the bug really should have been left as Available. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Jun 14 2018
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by alancutter@chromium.org
, Jun 30 2016