Taus 0ff0aecb22 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
2021-05-26 13:25:43 +02:00
2021-05-26 11:32:30 +02:00
2021-06-01 16:43:11 +00:00
2021-06-01 16:43:11 +00:00
2021-06-01 16:43:11 +00:00
2021-06-19 11:40:12 +00:00
2021-05-26 11:32:30 +02:00
2021-05-26 11:32:30 +02:00
2021-05-26 11:32:30 +02:00
2021-05-26 11:32:30 +02:00
2021-05-26 11:32:30 +02:00
2021-05-26 11:32:30 +02:00
2021-05-26 11:32:30 +02:00
2021-05-26 11:32:30 +02:00
2021-05-26 11:32:30 +02:00
2021-05-28 18:38:12 +01:00

QL analysis support for CodeQL

Part of the May 2021 code scanning hackathon.

Under development.

Building the tools from source

Install Rust, then run:

cargo build --release

Generating the database schema and QL library

The generated ql/src/ql.dbscheme and ql/src/codeql_ql/ast/internal/TreeSitter.qll files are included in the repository, but they can be re-generated as follows:

./create-extractor-pack.sh

Building a CodeQL database for a QL program

First, get an extractor pack:

Run ./create-extractor-pack.sh (Linux/Mac) or .\create-extractor-pack.ps1 (Windows PowerShell) and the pack will be created in the extractor-pack directory.

Then run

codeql database create <database-path> -l ql -s <project-source-path> --search-path <extractor-pack-path>

Running qltests

Run

codeql test run <test-path> --search-path <repository-root-path>
Description
CodeQL: the libraries and queries that power security researchers around the world, as well as code scanning in GitHub Advanced Security
Readme MIT 15 GiB
Languages
CodeQL 32.3%
Kotlin 27.5%
C# 17.1%
Java 7.7%
Python 4.6%
Other 10.6%