Minor fixes/enhancements to TypeSpec & Symbol (OSL internal classes) #1267
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Simplify implementation of TypeSpec::is_triple, more efficient.
Add TypeSpec::is_triple_based(), analogous to all the other
is_X/is_X_based.
Bug fix: Symbol::get_string()'s assertion was checking whether it was
a string, but should have checked if it was string_based.
Add Symbol::get_vec3(), analogous to get_int/float/string.
Add Symbol::coerce_float and coerce_vec3, like get but with some type
coercions.
Add Symbol::dataptr() as synonym for data(). This is for "forward
compatibility", a future PR will make more widespread use of this.
Lots and lots of places where error-prone and verbose casts are replaced
with the new methods, and some logic simplified.
Signed-off-by: Larry Gritz [email protected]