mirror of
https://github.com/github/codeql.git
synced 2026-02-11 20:51:06 +01:00
Rust: Move everything type inference related into the typeinference directory
This commit is contained in:
@@ -5,4 +5,4 @@
|
||||
* @id rust/diagnostics/type-inference-consistency
|
||||
*/
|
||||
|
||||
import codeql.rust.internal.TypeInferenceConsistency
|
||||
import codeql.rust.internal.typeinference.TypeInferenceConsistency
|
||||
|
||||
@@ -15,7 +15,7 @@ private import codeql.rust.internal.PathResolution
|
||||
private import codeql.rust.controlflow.ControlFlowGraph
|
||||
private import codeql.rust.dataflow.Ssa
|
||||
private import codeql.rust.dataflow.FlowSummary
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.DerefChain
|
||||
private import Node
|
||||
private import Content
|
||||
|
||||
@@ -205,8 +205,8 @@ private module Debug {
|
||||
private import Private
|
||||
private import Content
|
||||
private import codeql.rust.dataflow.internal.DataFlowImpl
|
||||
private import codeql.rust.internal.TypeMention
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.typeinference.TypeMention
|
||||
private import codeql.rust.internal.typeinference.Type
|
||||
|
||||
private predicate relevantManualModel(SummarizedCallableImpl sc, string can) {
|
||||
exists(Provenance manual |
|
||||
|
||||
@@ -14,7 +14,7 @@ private import codeql.rust.controlflow.ControlFlowGraph
|
||||
private import codeql.rust.controlflow.CfgNodes
|
||||
private import codeql.rust.dataflow.Ssa
|
||||
private import codeql.rust.dataflow.FlowSummary
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.DerefChain
|
||||
private import Node as Node
|
||||
private import DataFlowImpl
|
||||
|
||||
@@ -7,8 +7,8 @@ private import Node as Node
|
||||
private import Content
|
||||
private import FlowSummaryImpl as FlowSummaryImpl
|
||||
private import codeql.rust.internal.CachedStages
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.Type as Type
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.Type as Type
|
||||
private import codeql.rust.frameworks.stdlib.Builtins as Builtins
|
||||
|
||||
/**
|
||||
|
||||
@@ -15,7 +15,7 @@ module Impl {
|
||||
private import codeql.rust.elements.internal.InvocationExprImpl::Impl as InvocationExprImpl
|
||||
private import codeql.rust.elements.internal.CallImpl::Impl as CallImpl
|
||||
private import codeql.rust.internal.PathResolution as PathResolution
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
|
||||
pragma[nomagic]
|
||||
Path getFunctionPath(CallExpr ce) { result = ce.getFunction().(PathExpr).getPath() }
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
private import rust
|
||||
|
||||
module Impl {
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
private import codeql.rust.elements.internal.ExprImpl::Impl as ExprImpl
|
||||
private import codeql.rust.elements.internal.InvocationExprImpl::Impl as InvocationExprImpl
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ private import codeql.rust.elements.internal.generated.FieldExpr
|
||||
*/
|
||||
module Impl {
|
||||
private import rust
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
|
||||
// the following QLdoc is generated: if you need to edit it, do it in the schema file
|
||||
/**
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
private import rust
|
||||
|
||||
module Impl {
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
private import codeql.rust.elements.internal.ExprImpl::Impl as ExprImpl
|
||||
|
||||
private newtype TArgumentPosition =
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
private import rust
|
||||
private import codeql.rust.Concepts
|
||||
private import codeql.rust.dataflow.DataFlow
|
||||
private import codeql.rust.internal.TypeInference
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.typeinference.TypeInference
|
||||
private import codeql.rust.internal.typeinference.Type
|
||||
|
||||
bindingset[algorithmName]
|
||||
private string simplifyAlgorithmName(string algorithmName) {
|
||||
|
||||
@@ -128,8 +128,8 @@ module Stages {
|
||||
*/
|
||||
cached
|
||||
module TypeInferenceStage {
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.TypeInference
|
||||
private import codeql.rust.internal.typeinference.Type
|
||||
private import codeql.rust.internal.typeinference.TypeInference
|
||||
|
||||
/**
|
||||
* Always holds.
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
|
||||
private import rust
|
||||
private import codeql.rust.internal.PathResolution
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.TypeMention
|
||||
private import codeql.rust.internal.TypeInference
|
||||
private import Type
|
||||
private import TypeMention
|
||||
private import TypeInference
|
||||
|
||||
/**
|
||||
* Holds if `traitBound` is the first non-trivial trait bound of `tp`.
|
||||
|
||||
@@ -2,9 +2,9 @@
|
||||
|
||||
private import rust
|
||||
private import codeql.rust.internal.PathResolution
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.TypeInference
|
||||
private import codeql.rust.internal.TypeMention
|
||||
private import Type
|
||||
private import TypeInference
|
||||
private import codeql.rust.internal.typeinference.TypeMention
|
||||
private import codeql.rust.frameworks.stdlib.Stdlib
|
||||
private import codeql.rust.frameworks.stdlib.Builtins as Builtins
|
||||
private import codeql.util.UnboundList as UnboundListImpl
|
||||
|
||||
@@ -7,9 +7,9 @@
|
||||
|
||||
private import rust
|
||||
private import codeql.rust.internal.PathResolution
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.TypeMention
|
||||
private import codeql.rust.internal.TypeInference
|
||||
private import Type
|
||||
private import TypeMention
|
||||
private import TypeInference
|
||||
private import FunctionType
|
||||
|
||||
pragma[nomagic]
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
private import rust
|
||||
private import codeql.rust.internal.TypeInference
|
||||
private import codeql.rust.internal.PathResolution
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.TypeMention
|
||||
private import TypeInference
|
||||
private import Type
|
||||
private import TypeMention
|
||||
|
||||
private newtype TFunctionPosition =
|
||||
TArgumentFunctionPosition(ArgumentPosition pos) or
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/** Provides classes representing types without type arguments. */
|
||||
|
||||
private import rust
|
||||
private import PathResolution
|
||||
private import codeql.rust.internal.PathResolution
|
||||
private import TypeMention
|
||||
private import codeql.rust.internal.CachedStages
|
||||
private import codeql.rust.elements.internal.generated.Raw
|
||||
@@ -3,14 +3,14 @@
|
||||
private import codeql.util.Boolean
|
||||
private import codeql.util.Option
|
||||
private import rust
|
||||
private import PathResolution
|
||||
private import codeql.rust.internal.PathResolution
|
||||
private import Type
|
||||
private import Type as T
|
||||
private import TypeMention
|
||||
private import typeinference.DerefChain
|
||||
private import typeinference.FunctionType
|
||||
private import typeinference.FunctionOverloading as FunctionOverloading
|
||||
private import typeinference.BlanketImplementation as BlanketImplementation
|
||||
private import codeql.rust.internal.typeinference.DerefChain
|
||||
private import FunctionType
|
||||
private import FunctionOverloading as FunctionOverloading
|
||||
private import BlanketImplementation as BlanketImplementation
|
||||
private import codeql.rust.elements.internal.VariableImpl::Impl as VariableImpl
|
||||
private import codeql.rust.internal.CachedStages
|
||||
private import codeql.typeinference.internal.TypeInference
|
||||
@@ -1,9 +1,9 @@
|
||||
/** Provides classes for representing type mentions, used in type inference. */
|
||||
|
||||
private import rust
|
||||
private import codeql.rust.internal.PathResolution
|
||||
private import codeql.rust.frameworks.stdlib.Stdlib
|
||||
private import Type
|
||||
private import PathResolution
|
||||
private import TypeInference
|
||||
|
||||
/** An AST node that may mention a type. */
|
||||
@@ -6,8 +6,8 @@
|
||||
import rust
|
||||
private import codeql.rust.dataflow.DataFlow
|
||||
private import codeql.rust.security.AccessInvalidPointerExtensions
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.Type
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
|
||||
/**
|
||||
* Provides default sources, sinks and barriers for detecting accesses to a
|
||||
|
||||
@@ -10,8 +10,8 @@ private import codeql.rust.dataflow.FlowSink
|
||||
private import codeql.rust.Concepts
|
||||
private import codeql.rust.dataflow.internal.Node
|
||||
private import codeql.rust.security.Barriers as Barriers
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.Type
|
||||
|
||||
/**
|
||||
* Provides default sources, sinks and barriers for detecting accesses to
|
||||
|
||||
@@ -5,8 +5,8 @@
|
||||
|
||||
import rust
|
||||
private import codeql.rust.dataflow.DataFlow
|
||||
private import codeql.rust.internal.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.Type
|
||||
private import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
private import codeql.rust.internal.typeinference.Type
|
||||
private import codeql.rust.controlflow.ControlFlowGraph as Cfg
|
||||
private import codeql.rust.controlflow.CfgNodes as CfgNodes
|
||||
private import codeql.rust.frameworks.stdlib.Builtins as Builtins
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
|
||||
private import rust
|
||||
private import codeql.rust.internal.PathResolution
|
||||
private import codeql.rust.internal.TypeInference
|
||||
private import codeql.rust.internal.typeinference.TypeInference
|
||||
private import utils.test.InlineExpectationsTest
|
||||
|
||||
private module ResolveTest implements TestSig {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
* @id rust/diagnostics/type-inference-consistency-counts
|
||||
*/
|
||||
|
||||
private import codeql.rust.internal.TypeInferenceConsistency as Consistency
|
||||
private import codeql.rust.internal.typeinference.TypeInferenceConsistency as Consistency
|
||||
|
||||
// see also `rust/diagnostics/type-inference-consistency`, which lists the
|
||||
// individual inconsistency results.
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
*/
|
||||
|
||||
import rust
|
||||
import codeql.rust.internal.TypeInference
|
||||
import codeql.rust.internal.typeinference.TypeInference
|
||||
|
||||
from int atLimit
|
||||
where
|
||||
|
||||
@@ -8,7 +8,7 @@ private import codeql.rust.dataflow.internal.DataFlowImpl
|
||||
private import codeql.rust.dataflow.internal.TaintTrackingImpl
|
||||
private import codeql.rust.internal.AstConsistency as AstConsistency
|
||||
private import codeql.rust.internal.PathResolutionConsistency as PathResolutionConsistency
|
||||
private import codeql.rust.internal.TypeInferenceConsistency as TypeInferenceConsistency
|
||||
private import codeql.rust.internal.typeinference.TypeInferenceConsistency as TypeInferenceConsistency
|
||||
private import codeql.rust.controlflow.internal.CfgConsistency as CfgConsistency
|
||||
private import codeql.rust.dataflow.internal.DataFlowConsistency as DataFlowConsistency
|
||||
private import codeql.rust.dataflow.internal.SsaImpl::Consistency as SsaConsistency
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
import rust
|
||||
import codeql.util.ReportStats
|
||||
import codeql.rust.elements.internal.CallExprImpl::Impl as CallExprImpl
|
||||
import codeql.rust.internal.TypeInference as TypeInference
|
||||
import codeql.rust.internal.Type
|
||||
import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
import codeql.rust.internal.typeinference.Type
|
||||
|
||||
/**
|
||||
* A file that is included in the quality statistics.
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import rust
|
||||
import utils.test.InlineExpectationsTest
|
||||
import codeql.rust.internal.Type
|
||||
import codeql.rust.internal.TypeInference as TypeInference
|
||||
import codeql.rust.internal.typeinference.Type
|
||||
import codeql.rust.internal.typeinference.TypeInference as TypeInference
|
||||
import TypeInference
|
||||
|
||||
private predicate relevantNode(AstNode n) {
|
||||
|
||||
Reference in New Issue
Block a user