diff options
| author | jsmall-nvidia <jsmall@nvidia.com> | 2019-02-02 11:58:54 -0500 |
|---|---|---|
| committer | Tim Foley <tfoleyNV@users.noreply.github.com> | 2019-02-02 08:58:54 -0800 |
| commit | 3726194fbe3da234eb30b6371e5b4ab1ea388f93 (patch) | |
| tree | 815bb6162f76aeb2bd517126b802cc511cd0322a /docs/design/decl-refs.md | |
| parent | 6f2c03430afdf963eed53c08d0b63342af722868 (diff) | |
Feature/as refactor review (#821)
* Replace dynamicCast with as where does not change behavior (ie not Type derived).
Use free function where scoping is clear.
* Replace uses of dynamicCast with as when there is no difference in behavior.
* Remove the IsXXXX methods from Type.
* Don't have separate smart pointer to store canonicalType on Type.
* Simplify Slang.FilteredMemberRefList.Adjust, such does the cast directly.
* Use free as where appropriate.
* Use free function version of casts where appropriate.
* Fix text in casting.md
* Fix typos in decl-refs.md
* Remove the uses of free function as on RefDecl.
Add 'canAs' to RefDecl as a way to test if a cast is possible.
Moved 'as' into RefDeclBase.
* Use 'is' to test for as cast on smart pointers.
Fix small scope issue.
* * Cache stringType and enumTypeType on the Session
* Make DeclRefType::Create return a RefPtr
* Make casting of result use the *method* .as (cos using free function would mean objects being wrongly destroyed)
* Make results from createInstance ref'd to avoid possible leaks.
* Fix typo in template parameter for is on RefPtr.
Diffstat (limited to 'docs/design/decl-refs.md')
| -rw-r--r-- | docs/design/decl-refs.md | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/docs/design/decl-refs.md b/docs/design/decl-refs.md index 1644f6f34..3a84cfdcf 100644 --- a/docs/design/decl-refs.md +++ b/docs/design/decl-refs.md @@ -69,7 +69,7 @@ If we then want to query the type of this field, we can first look up the type s Cell::T [Cell::T => int] ``` -Of course, we can then simplify the reference by applying the substutions, to get: +Of course, we can then simplify the reference by applying the substitutions, to get: ``` int @@ -89,7 +89,7 @@ Each ancestor of a declaration can introduce an expected substitution along the * A surrounding `interface` declaration usually requires a `ThisTypeSubstitution` that identifies the specific type on which an interface member has been looked up. -All of the expected substitutions should be in place in the gerneral case, even when we might not have additional information. E.g., within a generic declaration like this: +All of the expected substitutions should be in place in the general case, even when we might not have additional information. E.g., within a generic declaration like this: ```hlsl struct Cell<T> |
