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/ql-style-guide.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -216,7 +216,7 @@ class Type extends ... {
216
216
217
217
General requirements:
218
218
219
-
1. Documentation *must* adhere to the [QLDoc specification](https://help.semmle.com/QL/QLDocSpecification.html).
219
+
1. Documentation *must* adhere to the [QLDoc specification](https://help.semmle.com/QL/ql-handbook/qldoc.html).
220
220
1. Use `/** ... */` for documentation, even for single line comments.
221
221
1. For single-line documentation, the `/**` and `*/` are written on the same line as the comment.
222
222
1. For multi-line documentation, the `/**` and `*/` are written on separate lines. There is a `*` preceding each comment line, aligned on the first `*`.
|*[annotation](https://help.semmle.com/QL/QLLanguageSpecification.html#annotations)*| An additional specifier used to modify a declaration, such as `private`, `override`, `deprecated`, `pragma`, `bindingset`, or `cached`. |
420
+
|*[annotation](https://help.semmle.com/QL/ql-handbook/language.html#annotations)*| An additional specifier used to modify a declaration, such as `private`, `override`, `deprecated`, `pragma`, `bindingset`, or `cached`. |
421
421
|*body*| The text inside `{ }`, `( )`, or each section of an `if`-`then`-`else` or `from`-`where`-`select`. |
422
422
|*binary operator*| An operator with two operands, such as comparison operators, `and`, `or`, `implies`, or arithmetic operators. |
423
423
|*call*| A *formula* that invokes a predicate, e.g. `this.isStatic()` or `calls(a,b)`. |
424
-
|*[conjunct](https://help.semmle.com/QL/QLLanguageSpecification.html#conjunctions)*| A formula that is an operand to an `and`. |
424
+
|*[conjunct](https://help.semmle.com/QL/ql-handbook/language.html#conjunctions)*| A formula that is an operand to an `and`. |
425
425
|*declaration*| A class, module, predicate, field or newtype. |
426
-
|*[disjunct](https://help.semmle.com/QL/QLLanguageSpecification.html#disjunctions)*| A formula that is an operand to an `or`. |
427
-
|*[formula](https://help.semmle.com/QL/QLLanguageSpecification.html#formulas)*| A logical expression, such as `A = B`, a *call*, a *quantifier*, `and`, `or`, `not`, `in` or `instanceof`. |
426
+
|*[disjunct](https://help.semmle.com/QL/ql-handbook/language.html#disjunctions)*| A formula that is an operand to an `or`. |
427
+
|*[formula](https://help.semmle.com/QL/ql-handbook/language.html#formulas)*| A logical expression, such as `A = B`, a *call*, a *quantifier*, `and`, `or`, `not`, `in` or `instanceof`. |
428
428
|*should/should not/avoid/prefer*| Adhere to this rule wherever possible, where it makes sense. |
429
429
|*may/can*| This is a reasonable alternative, to be used with discretion. |
430
430
|*must/always/do not*| Always adhere to this rule. |
431
-
|*[quantifier/aggregation](https://help.semmle.com/QL/QLLanguageSpecification.html#aggregations)*|`exists`, `count`, `strictcount`, `any`, `forall`, `forex` and so on. |
431
+
|*[quantifier/aggregation](https://help.semmle.com/QL/ql-handbook/language.html#aggregations)*|`exists`, `count`, `strictcount`, `any`, `forall`, `forex` and so on. |
432
432
|*variable*| A parameter to a predicate, a field, a from variable, or a variable introduced by a *quantifier* or *aggregation*. |
Copy file name to clipboardExpand all lines: docs/query-help-style-guide.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,7 +36,7 @@ Section-level elements are used to group the information within the query help f
36
36
3.`example`—an example of code showing the problem. Where possible, this section should also include a solution to the issue.
37
37
4.`references`—relevant references, such as authoritative sources on language semantics and best practice.
38
38
39
-
For further information about the other section-level, block, list and table elements supported by query help files, see the [Query help reference](https://help.semmle.com/QL/learn-ql/ql/writing-queries/query-help.html) on help.semmle.com.
39
+
For further information about the other section-level, block, list and table elements supported by query help files, see [Query help files](https://help.semmle.com/QL/learn-ql/ql/writing-queries/query-help.html) on help.semmle.com.
Copy file name to clipboardExpand all lines: docs/query-metadata-style-guide.md
+5-6Lines changed: 5 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,8 +11,7 @@ Query files have the extension `.ql`. Each file has two distinct areas:
11
11
* Metadata area–displayed at the top of the file, contains the metadata that defines how results for the query are interpreted and gives a brief description of the purpose of the query.
12
12
* Query definition–defined using QL. The query includes a select statement, which defines the content and format of the results. For further information about writing QL, see the following topics:
@@ -26,7 +25,7 @@ For examples of query files for the languages supported by CodeQL, visit the fol
26
25
27
26
## Metadata area
28
27
29
-
Query file metadata contains important information that defines the identifier and purpose of the query. The metadata is included as the content of a valid [QLDoc](https://help.semmle.com/QL/ql-spec/qldoc.html) comment, on lines with leading whitespace followed by `*`, between an initial `/**` and a trailing `*/`. For example:
28
+
Query file metadata contains important information that defines the identifier and purpose of the query. The metadata is included as the content of a valid [QLDoc](https://help.semmle.com/QL/ql-handbook/qldoc.html) comment, on lines with leading whitespace followed by `*`, between an initial `/**` and a trailing `*/`. For example:
30
29
31
30
```
32
31
/**
@@ -158,7 +157,7 @@ When you tag a query like this, the associated CWE pages from [MITRE.org](http:/
158
157
159
158
## QL area
160
159
161
-
### Alert messages
160
+
### Alert messages
162
161
163
162
The select clause of each alert query defines the alert message that is displayed for each result found by the query. Alert messages are strings that concisely describe the problem that the alert is highlighting and, if possible, also provide some context. For consistency, alert messages should adhere to the following guidelines:
164
163
@@ -167,7 +166,7 @@ The select clause of each alert query defines the alert message that is displaye
167
166
* Program element references should be in 'single quotes' to distinguish them from ordinary words. Quotes are not needed around substitutions ($@).
168
167
* Avoid constant alert message strings and include some context, if possible. For example, `The class 'Foo' is duplicated as 'Bar'.` is preferable to `This class is duplicated here.`
169
168
* Where you reference another program element, link to it if possible using a substitution (`$@`). Links should be used inline in the sentence, rather than as parenthesised lists or appositions.
170
-
* When a message contains multiple links, construct a sentence that has the most variable link (that is, the link with most targets) last. For further information, see [Defining select statements](https://help.semmle.com/QL/learn-ql/ql/writing-queries/select-statement.html).
169
+
* When a message contains multiple links, construct a sentence that has the most variable link (that is, the link with most targets) last. For further information, see [Defining the results of a query](https://help.semmle.com/QL/learn-ql/ql/writing-queries/select-statement.html).
171
170
172
171
For examples of select clauses and alert messages, see the query source files at the following pages:
173
172
@@ -177,4 +176,4 @@ For examples of select clauses and alert messages, see the query source files at
For further information on query writing, see [Writing CodeQL queries](https://help.semmle.com/QL/learn-ql/ql/writing-queries/writing-queries.html). For more information on learning CodeQL, see [Learning CodeQL](https://help.semmle.com/QL/learn-ql/index.html).
179
+
For further information on query writing, see [CodeQL queries](https://help.semmle.com/QL/learn-ql/ql/writing-queries/writing-queries.html). For more information on learning CodeQL, see [Learning CodeQL](https://help.semmle.com/QL/learn-ql/index.html).
0 commit comments