Geoffrey White
7c02b6a3b2
QL: Add tests.
2021-10-13 15:00:54 +01:00
Geoffrey White
161461eb6f
QL: Support hasName(x) pattern as well.
2021-10-13 15:00:54 +01:00
Geoffrey White
d933bf6f24
QL: Add ql/use-set-literal query.
2021-10-13 15:00:54 +01:00
Anders Schack-Mulligen
4b73c99c56
QL: Merge pull request #75 from github/aschackmull/isclosure
...
Expose transitive closure syntax.
2021-10-13 15:45:20 +02:00
Mathias Vorreiter Pedersen
366fc23938
QL: Merge pull request #79 from github/esbena/fix-1
...
fix getAPrimaryQlClass: SuperAccess -> Super
2021-10-13 14:44:25 +01:00
Esben Sparre Andreasen
64a3ffdca7
QL: fix getAPrimaryQlClass: SuperAccess -> Super
2021-10-13 15:38:16 +02:00
Erik Krogh Kristensen
236989f6fd
QL: add pretty AST for YAML and a QLPack utility class
2021-10-13 15:35:14 +02:00
Mathias Vorreiter Pedersen
d2222ee9f2
QL: Merge pull request #62 from github/if-with-none
...
QL: Add query that finds 'if p() then q() else none()'
2021-10-13 14:29:15 +01:00
Esben Sparre Andreasen
d41331b28b
QL: Merge pull request #64 from github/esbena/codeql-action-support
...
CodeQL-action to work with QL-for-QL
2021-10-13 15:24:13 +02:00
Esben Sparre Andreasen
5e1f565b6a
QL: add workflow with codeql-action
2021-10-13 15:21:08 +02:00
Taus
d0cb1384a9
QL: Extend the tests slightly
...
Adds a test for when the call is to an outer, non-member predicate.
2021-10-13 13:03:30 +00:00
Anders Schack-Mulligen
7d68020c7b
QL: Expose transitive closure syntax.
2021-10-13 12:48:38 +00:00
Taus
a0e2bd57a7
QL: Add tests for "implicit this"
2021-10-13 12:27:20 +00:00
Taus
fb5513c1c8
QL: Add "implicit this" query
2021-10-13 12:08:19 +00:00
Mathias Vorreiter Pedersen
d1721d0bcd
QL: Merge pull request #69 from github/erik-krogh/perf
...
fix two bad join orders
2021-10-13 12:53:12 +01:00
Erik Krogh Kristensen
15679dfec6
QL: autoformat
2021-10-13 13:34:47 +02:00
Erik Krogh Kristensen
09862b9fe7
QL: cache getClassPredicate
2021-10-13 13:26:37 +02:00
Taus
30040680ec
QL: "Parse" YAML without errors
2021-10-13 11:24:26 +00:00
Joe Farebrother
c3493d6fde
QL: Add check for predicates with an override annotation
2021-10-13 12:22:46 +01:00
Erik Krogh Kristensen
932f00b43e
QL: fix two bad join orders
2021-10-13 13:20:41 +02:00
Joe Farebrother
d474a76cf0
QL: "doesn't mention this" query
2021-10-13 12:09:04 +01:00
Anders Schack-Mulligen
3ed7f9664c
QL: Merge pull request #55 from github/mathiasvp/prefix-or-suffix-in-comparison
...
New query: Find uses of '.prefix' or '.suffix' when comparing against string literals
2021-10-13 12:45:12 +02:00
Anders Schack-Mulligen
87910e80af
QL: Merge pull request #54 from github/aschackmull/singleton-set
...
New query: Singleton set literal.
2021-10-13 12:43:41 +02:00
Philip Ginsbach
fed3d80a3d
QL: Merge pull request #65 from github/ginsbach/SuggestInstanceof
...
Suggest instanceof extensions
2021-10-13 11:33:41 +01:00
Philip Ginsbach
9ae0aad46d
QL: suggest replacing 'this instanceof ...' in constructor with non-extending subtypes
2021-10-13 11:06:59 +01:00
Mathias Vorreiter Pedersen
df20f84ae2
QL: QL: Respond to PR comments.
2021-10-13 09:57:05 +00:00
Mathias Vorreiter Pedersen
6c7d848727
QL: QL: Add query that finds 'if p() then q() else none()'.
2021-10-13 09:48:57 +00:00
Anders Schack-Mulligen
01ef4d7060
QL: Add missing extends Formula
2021-10-13 09:47:10 +00:00
Mathias Vorreiter Pedersen
e927c43222
QL: QL: Actually use the SuffixPredicateCall class as well. Now the query finds 20 results.
2021-10-13 09:31:45 +00:00
Mathias Vorreiter Pedersen
b4d710d58f
QL: QL: Respond to PR reviews.
2021-10-13 09:28:02 +00:00
Mathias Vorreiter Pedersen
f86a827bb6
QL: QL: Add query to find uses of .prefix or .suffix when comparing against literals.
2021-10-13 09:06:58 +00:00
Anders Schack-Mulligen
f71acdf9fe
QL: New query: Singleton set literal.
2021-10-13 09:01:54 +00:00
Taus
352c50c2e5
QL: Merge pull request #37 from github/toUnicodeBuildin
...
add `toUnicode` as a build-in
2021-10-13 10:13:05 +02:00
Taus
db6551c22d
QL: Fix up getASuperType
...
I'm not sure if it's correct to include also the `instanceof`s, but we
can always fix this later.
2021-10-12 19:28:13 +00:00
Taus
4694ab4773
QL: Support instanceof
...
Stills needs to be hooked up correctly to the AST.
2021-10-12 17:40:29 +00:00
Taus
b719faa627
QL: Merge pull request #36 from github/various-small-fixes
...
Various small fixes
2021-09-23 13:42:19 +02:00
Erik Krogh Kristensen
23b2d43440
QL: Update ql/src/queries/style/RankOne.ql
...
Co-authored-by: Taus <tausbn@github.com >
2021-08-18 11:25:36 +02:00
Erik Krogh Kristensen
b45a793e28
QL: add a query for finding rank[1]
2021-08-18 09:19:05 +00:00
Erik Krogh Kristensen
b385dfd5a8
QL: add toUnicode as a build-in
2021-06-22 12:07:47 +00:00
Taus
2515fc0ebc
QL: Add exclusions to Module consistency test
2021-06-19 12:41:16 +00:00
Taus
7a117caaea
QL: Autoformat
2021-06-19 12:36:10 +00:00
Taus
2fa4424f71
QL: Remove SuperAccess::getType()
...
This had a bad effect on our call resolution, so I'm reverting it for
now. We may want to diverge from the language specification here.
2021-06-19 12:17:17 +00:00
Taus
4c4a2658fe
QL: Update printAst test
...
to reflect the renaming of `Aggregate` to `FullAggregate`.
2021-06-19 12:16:42 +00:00
Taus
fb8f549d93
QL: Exclude a few more paths from tests
2021-06-19 11:54:50 +00:00
Taus
76b55c4a5a
QL: Split up Aggregate properly
...
Previously, we had `Aggregate` and `ExprAggregate` as separate classes,
the latter of which representing aggregates that contain only an
expression.
This was a problem for the `rank` aggregate, as it inherited from
`Aggregate`, but _could_ also contain just an expression (even if this
is rather rare).
To fix this, I renamed `Aggregate` to `FullAggregate` (to make the
division clearer), and added a new type `Aggregate` that represents the
union of these two types. Now `Rank` can inherit from the new class
`Aggregate` and everything is dandy.
2021-06-19 11:50:50 +00:00
Taus
8d17a95265
QL: Fix getType for aggregates
...
We were only including the `strict` variant of `count` and not any of
the other ones (spot the mistake!).
Also, `unique` was added as a recognised aggregate name.
2021-06-19 11:47:45 +00:00
Taus
602c9e720e
QL: Add more getType overrides
...
Mainly adds ones for primitive types.
One peculiarity: the language specification states that the type of
`super` is the same as the type of `this`, and _not_ the type of
the superclass on which the method is actually accessed. This seems a
bit strange to me, so I thought I would highlight it specifically.
Also, I'm not entirely sure that the rules around type coercion for
the various binary operators are 100% correct.
2021-06-19 11:40:12 +00:00
Taus
75a959389c
QL: Update to latest generator
...
Includes better QLDoc generation and better escaping in the generated
files (the latter has changed the dbscheme, so rebuilding databases will
be required).
2021-06-01 16:43:11 +00:00
Taus
cbd0caa4ab
QL: Fix getQLDoc compilation error
2021-05-31 08:55:27 +00:00
Taus
ada77a3c8b
QL: Merge branch 'main' into dbscheme-and-qlpack-support
2021-05-31 10:50:39 +02:00