-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Rust: Support non-universal impl
blocks
#19372
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
base: main
Are you sure you want to change the base?
Conversation
} | ||
|
||
final class SelfTypeBoundTypeAbstraction extends TypeAbstraction, Name { | ||
Trait trait; |
Check notice
Code scanning / CodeQL
Field only used in CharPred Note
* Gets an `impl` block with an implementing type that matches the type of | ||
* `mce`'s receiver. | ||
*/ | ||
private predicate methodCallMatchingImpl(ReceiverExpr receiver, Function function) { |
Check warning
Code scanning / CodeQL
Missing QLDoc for parameter Warning
@@ -32,6 +32,18 @@ | |||
/** A type parameter. */ | |||
class TypeParameter extends Type; | |||
|
|||
/** Type abstraction. */ |
Check warning
Code scanning / CodeQL
Class QLDoc style. Warning
@@ -212,6 +222,74 @@ | |||
TypePath cons(TypeParameter tp, TypePath suffix) { result = singleton(tp).append(suffix) } | |||
} | |||
|
|||
/** Any class that represents a type abstraction. */ |
Check warning
Code scanning / CodeQL
Class QLDoc style. Warning
TypeParameter getATypeParameter(); | ||
} | ||
|
||
/** Any class that represents a type tree. */ |
Check warning
Code scanning / CodeQL
Class QLDoc style. Warning
* Holds if `apps` is a potential and relevant instantiation of `term` for | ||
* the free type variables in `abs`. | ||
*/ | ||
predicate potentialInstantiationOf(TypeAbstraction abs, App app, TypeMention term); |
Check warning
Code scanning / CodeQL
Missing QLDoc for parameter Warning
) | ||
} | ||
|
||
predicate debugTypeMentionWithoutType(TypeMention ment) { |
Check warning
Code scanning / CodeQL
Dead code Warning
} | ||
|
||
predicate debugTypeMentionWithoutType(TypeMention ment) { | ||
not exists(TypePath path, Type t | ment.resolveTypeAt(path) = t) |
Check warning
Code scanning / CodeQL
Omittable 'exists' variable Warning
in this argument
/** | ||
* The type at `a`, `apos`, `pathToSub` satisfies `constraint` through | ||
* `abs`, `sub`, and `constraintMention`. | ||
*/ |
Check warning
Code scanning / CodeQL
Predicate QLDoc style. Warning
No description provided.