You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/language/ql-handbook/types.rst
+1-2Lines changed: 1 addition & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -511,8 +511,7 @@ For example, the following construction is legal::
511
511
}
512
512
513
513
However, a similar implementation that restricts ``InitialValueSource`` in a class extension is not valid.
514
-
The class ``DefiniteInitialization`` triggers a type test for ``InitialValueSource``, which results in an illegal recursion
515
-
``DefiniteInitialization -> InitialValueSource -> UnknownInitialGarbage -> ¬DefiniteInitialization`` since ``UnknownInitialGarbage`` relies on ``DefiniteInitialization``::
514
+
If we had implemented ``DefiniteInitialization`` as a class extension instead, it would trigger a type test for ``InitialValueSource``. This results in an illegal recursion ``DefiniteInitialization -> InitialValueSource -> UnknownInitialGarbage -> ¬DefiniteInitialization`` since ``UnknownInitialGarbage`` relies on ``DefiniteInitialization``::
516
515
517
516
class DefiniteInitialization extends InitialValueSource {
0 commit comments