mirror of
https://github.com/github/codeql.git
synced 2026-04-27 09:45:15 +02:00
C#: Add test for parameter modifiers.
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
using System;
|
||||
|
||||
public class ParameterModifiers
|
||||
{
|
||||
public void M1(object p1) { }
|
||||
public void M2(in object p2) { }
|
||||
|
||||
public void M3(out object p3)
|
||||
{
|
||||
p3 = new object();
|
||||
}
|
||||
|
||||
public void M4(ref object p4) { }
|
||||
|
||||
public void M5(params object[] p5) { }
|
||||
|
||||
public void M6(ref readonly object p6) { }
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
parameterModifier
|
||||
| ParameterModifiers.cs:5:27:5:28 | p1 | 0 |
|
||||
| ParameterModifiers.cs:6:30:6:31 | p2 | 5 |
|
||||
| ParameterModifiers.cs:8:31:8:32 | p3 | 2 |
|
||||
| ParameterModifiers.cs:13:31:13:32 | p4 | 1 |
|
||||
| ParameterModifiers.cs:15:36:15:37 | p5 | 3 |
|
||||
| ParameterModifiers.cs:17:40:17:41 | p6 | 0 |
|
||||
parameterIsValue
|
||||
| ParameterModifiers.cs:5:27:5:28 | p1 |
|
||||
| ParameterModifiers.cs:17:40:17:41 | p6 |
|
||||
parameterIsIn
|
||||
| ParameterModifiers.cs:6:30:6:31 | p2 |
|
||||
parameterIsOut
|
||||
| ParameterModifiers.cs:8:31:8:32 | p3 |
|
||||
parameterIsRef
|
||||
| ParameterModifiers.cs:13:31:13:32 | p4 |
|
||||
parameterIsParams
|
||||
| ParameterModifiers.cs:15:36:15:37 | p5 |
|
||||
@@ -0,0 +1,17 @@
|
||||
import csharp
|
||||
|
||||
class TestParameter extends Parameter {
|
||||
TestParameter() { this.getFile().getBaseName() = "ParameterModifiers.cs" }
|
||||
}
|
||||
|
||||
query predicate parameterModifier(TestParameter p, int kind) { params(p, _, _, _, kind, _, _) }
|
||||
|
||||
query predicate parameterIsValue(TestParameter p) { p.isValue() }
|
||||
|
||||
query predicate parameterIsIn(TestParameter p) { p.isIn() }
|
||||
|
||||
query predicate parameterIsOut(TestParameter p) { p.isOut() }
|
||||
|
||||
query predicate parameterIsRef(TestParameter p) { p.isRef() }
|
||||
|
||||
query predicate parameterIsParams(TestParameter p) { p.isParams() }
|
||||
Reference in New Issue
Block a user