Skip to content

Commit b78fcd3

Browse files
authored
Merge pull request #745 from hvitved/csharp/query/missed-readonly-modifier
Approved by calumgrant
2 parents 3fe9f92 + 2197736 commit b78fcd3

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

csharp/ql/src/Language Abuse/MissedReadonlyOpportunity.ql

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,12 @@
1212

1313
import csharp
1414

15+
predicate defTargetsField(AssignableDefinition def, Field f) {
16+
def.getTarget().getSourceDeclaration() = f
17+
}
18+
1519
predicate isReadonlyCompatibleDefinition(AssignableDefinition def, Field f) {
16-
def.getTarget().getSourceDeclaration() = f and
20+
defTargetsField(def, f) and
1721
(
1822
def.getEnclosingCallable().(Constructor).getDeclaringType() = f.getDeclaringType()
1923
or
@@ -22,7 +26,7 @@ predicate isReadonlyCompatibleDefinition(AssignableDefinition def, Field f) {
2226
}
2327

2428
predicate canBeReadonly(Field f) {
25-
forex(AssignableDefinition def | def.getTarget().getSourceDeclaration() = f |
29+
forex(AssignableDefinition def | defTargetsField(def, f) |
2630
isReadonlyCompatibleDefinition(def, f)
2731
)
2832
}

0 commit comments

Comments
 (0)