Skip to content

Commit c07db09

Browse files
committed
QLSpec: Adress comments from review
1 parent 04a4709 commit c07db09

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

docs/codeql/ql-language-reference/ql-language-specification.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -827,7 +827,7 @@ The types specified after the ``extends`` keyword are the *base types* of the cl
827827

828828
The types specified after the ``instanceof`` keyword are the *instanceof types* of the class.
829829

830-
A class type is said to *inherit* from the base types of the associated class type. In addition, inheritance is transitive: If a type ``A`` inherits from a type ``B``, and ``B`` inherits from a type ``C``, then ``A`` inherits from ``C``.
830+
A class type is said to *inherit* from the base types. In addition, inheritance is transitive: If a type ``A`` inherits from a type ``B``, and ``B`` inherits from a type ``C``, then ``A`` inherits from ``C``.
831831

832832
A class adds a mapping from the class name to the class declaration to the current module's declared type environment.
833833

@@ -1186,11 +1186,11 @@ If the call includes a closure, then all declared predicate arguments, the enclo
11861186

11871187
A call to a member predicate may be a *direct* call:
11881188
- If the receiver is not a super expression it is not direct.
1189-
- The receiver is ``A.super`` and ``A`` is an instanceof type and not a base type then it is not direct.
1190-
- The receiver is ``A.super`` and ``A`` is a base type type and not an instanceof type then it is direct.
1191-
- If the receiver is ``A.super`` and ``A`` is a base type and an instanceof type then the call is not valid
1192-
- The receiver is ``super`` and the member predicate is in the exported member predicate environment of an instanceof type and not in the exported member predicate environment of a base type then it isn't direct.
1193-
- The receiver is ``super`` and the member predicate is in the exported member predicate environment of a base type and not in the exported member predicate environment of an instanceof type then it is direct.
1189+
- If the receiver is ``A.super`` and ``A`` is an instanceof type and not a base type then it is not direct.
1190+
- If the receiver is ``A.super`` and ``A`` is a base type type and not an instanceof type then it is direct.
1191+
- If the receiver is ``A.super`` and ``A`` is a base type and an instanceof type then the call is not valid.
1192+
- If the receiver is ``super`` and the member predicate is in the exported member predicate environment of an instanceof type and not in the exported member predicate environment of a base type then it isn't direct.
1193+
- If the receiver is ``super`` and the member predicate is in the exported member predicate environment of a base type and not in the exported member predicate environment of an instanceof type then it is direct.
11941194
- If the receiver is ``super`` and the member predicate is in the exported member predicate environment of a base type and in the exported member predicate environment of an instanceof type then the call is not valid.
11951195

11961196
If the call resolves to a member predicate, then the *receiver values* are as follows. If the call has a receiver, then the receiver values are the values of that receiver. If the call does not have a receiver, then the single receiver value is the value of ``this`` in the contextual named tuple.

0 commit comments

Comments
 (0)